z+=-x++ +(++y);printf(\(1) 从键盘上输入一个大写字母,要求改用小写字母输出。 }
(2) 请编写一个程序,能显示出以下两行文字。 程序的输出结果是____________。 I am a student. 三.编程题 I love China.
【参考答案】 一.选择题
(1) C (2) C (3)A (4) B (5) B 二.填空题
(1)09 (2)3.140000, 3.142 double a,b a+b a-b a*b a/b (4)65A (5) 10 40 2.0 3.0 三、编程题 (1)
#include
else
printf(\输入的不是大写字母\\n\ } (2)
#include
}
6
习 题4
一.选择题 (1) 以下程序段: int i,a=3,b=2; i=(--a==b++)?--a:++b;
printf(\输出结果是 。 A)i=1 a=1 b=3 B)i=3 a=2 b=3 C)i=4 a=1 b=4
D)i=4 a=2 b=4
(2)若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是 。
A)1 B)0 C)2 D)不知道a的值,不能确定
(3)能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是 。
A)(x<=-10)||(x>=-5)&&(x<=0)||(x>=100) B)(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100) C)(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100) D)(x<=-10)||(x>=-5)&&(x<=0)||(x>=100) (4)以下程序的运行结果是 。 main( ) {
int c,x,y; x=1; y=1; c=0;
c=x++||y++;
printf(“\\n%d%d%d\\n”,x,y,c); }
A)110 B)211 C)011 D)001 (5)两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是 。 main( ) { int x;
scanf(“%d”,&x);
if(x++>5) printf(“%d”,x); else printf(“%d\\n”,x--);
}
A)7和5 B)6和3 C)7和4 D)6和4 (6)写出下面程序的执行结果 。 main( ) { int x,y=1; if(y!=0) x=5; printf(“%d\\t”,x);
if(y= =0) x=3; else x=5;
printf(“%d\\t\\n”,x); }
A)1 3 B)1 5 C)5 3 D)5 5
(7)写出下面程序的执行结果 。 main() {
int x=1,y=1,z=0;
if(z<0) if(y>0) x=3; else x=5; printf(\if(z=y<0) x=3; else if(y= =0 ) x=5; else x=7; printf(\printf(\}
A)1 7 0 B)3 7 0 C)5 5 0 D)1 5 1
(8)假定所有变量均已正确说明,下列程序段运行后x的值是 。 a=b=c=0;x=35; if(!a) x=-1; else if(b); if(c) x=3; else x=4;
A)34 B)4 C)35 D)3 (9)以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是 。 A)switch(a) {
case1:a=b; break;
default:a++; }
B)switch(a==1) {
case 0:a=b; break;
case 1:a++; }
C)switch(a) {
default:a++;break;
case1:a=b; }
7
D)switch(a==1) {
case 1:a=b;break;
if(a++<9) printf(\ else printf(\}
程序运行时从键盘输入9<回车>,则输出的结果是 。 A)10 B)11 C)9 D)8
(15) 已知 int x=30,y=50,z=80;以下语句执行后变量x、y、case 0:a++; }
(10)有如下嵌套的if语句 if(a
以下选项中与上述if语句等价的语句是 。 A)k=(a
B)k=(a main() {
int a=1,b=0; if(--a) b++; else if(a==0) b+=2; else b+=3; printf(“%d\\n”,b); }
程序运行后的输出结果是 。 A)0 B)1 C)2 D)3
(12)下列条件语句中输出结果与其他语句不同的是 。
A)if(a) printf(“%d\\n”,x); else printf(“%d\\n”,y); B)if(a==0) printf(“%d\\n”,y); else printf(“%d\\n”,x); C)if(a!=0) printf(“%d\\n”,x); else printf(“%d\\n”,y); D)if(a==0) printf(“%d\\n”,x); else printf(“%d\\n”,y); (13) 以下选项中与if(a==1)a=b; else a++;语句功能不同的switch语句是 。
A)switch(a) {case 1:a=b;break; default:a++; } B)switch(a==1) {case 0:a=b;break;case 1:a++; } C)switch(a) {default:a++;break;case 1:a=b;} D)switch(a==1) {case 1:a=b;break; case 0:a++;} (14) 有以下程序 #include
scanf(\
z的值分别为: 。 if (x>y||x
A)x=50, y=80, z=80 B)x=50, y=30, z=30 C)x=30, y=50, z=80 D)x=80, y=30, z=50 二.填空题
(1) 以下程序运行的输出结果是 。 main()
{ int p=30;
printf(\
(2) 有以下程序 #include
{int a=1,b=2,c=3,d=0; if(a==1) if(b!=2) if(c==3) d=1; else d=2;
else if(c!=3) d=3; else d=4; else d=5;
printf(“%d\\n”,d); }
程序运行后的输出结果是 。 (3) 有以下程序 #include
if(x>15) printf(\if(x>10) printf(\if(x>5) printf(\
若程序运行时从键盘输入12<回车>,则输出结果为(4)以下两条if语句可合并成一条if语句为 if(a<=b) x=1; else y=2;
if(a>b) printf(\
。 8
。、else printf(\
(5)输入一个字符,如果是大写字母,则把其变成小写字母;如果是小写字母,则变成大写字母;其它字符不变。请在( )内填入缺省的内容。 main( ) { char ch; 三.编程题
scanf(“%c”,&ch); if (_______) ch=ch+32;
else if(ch>=’a’&&ch<=‘z’) (_____); printf(”%c\\n”,ch); }
1.编写一个程序,要求有键盘输入三个数,计算以这三个数为边长的三角形的面积。
2.输入圆的的半径r和一个整型数k,当k=1时,计算圆的面积;但k=2时,计算圆的周长,当k=3时,既要求求圆的周长也要求出圆的面积。编程实现以上功能。 3. 编写程序,判断某一年是否是闰年。
4. 有一函数,其函数关系如下,试编程求对应于每一自变量的函数值。 x2 (x<0) y = -0.5x+10 (0≤x<10) x- (x≥10)
【参考答案】
一.选择题
(1) A (2) A (3) B (4) B (5) A (6) D (7) A (8) B (9) B (10) C (11)C (12) D (13) B (14) A (15) A 二.填空题 (1) 0 (2) 4 (3) 1217
(4) if(a<=b) {x=1; printf(\ else {y=2; printf(\ 'A'<=ch && ch<='Z' ch=ch-32 编程题
1 #include
else {
printf(\您输入的三角形边长有误\float a,b,c,z,n,s;
printf(\请输入三角形边长:a,b,c:\scanf(\
if(a+b<=c||fabs(a-b)>=c)//fabs为求浮点数绝对值
z=a+b+c; n=z/2;
s=sqrt(n*(n-a)*(n-b)*(n-c));//sqart为平方
根函数 }
2 #include
int main() {
float r; int k;
printf(\请输入半径r: \\n\scanf(\
printf(\请输入处理要求\\n 1. 计算圆的面积 \\n }
printf(\三角形面积是 %f\\n:\
2. 计算圆的周长\\n 3. 计算圆的周长和圆的面积 \\n\
scanf(\switch(k) { case 1:
printf(\圆的面积为: %f\\n\
break;
case 2:
9
printf(\圆的周长为: %f\\n\break; case 3: printf(\圆的面积为: %f\\n\
printf(\圆的周长为: %f\\n\
break; default: printf(\错误要求!! \\n\
}
}
3 #include
int year,result=0; printf(\输入一个年份:\\n\ scanf(\ if(year0==0) { if(year@0==0) printf(\是闰年\\n\
else
printf(\不是闰年\\n\
}
else if(year%4==0)
printf(\是闰年\\n\
}
4 #include
printf(\输入x: \ scanf(\
if(x<0) printf(\
else if(x>=0&&x<10)
printf(\ else if(x>=10)
printf(\
}
10