资源描述:
《c语言 习题五参考答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第五章参考答案一、单项选择题(P111)1、要判断char型变量m是否是数字字符,可以使用下列表达式()A.0<=m&&m<=9B.’0’<=&&m<=’9’C.”0”<=m&&m<=”9”D.前面三个答案均是错误的2、if语句的控制条件()。A)只能用关系表达式B)只能用关系表达式或逻辑表达式C)只能用逻辑表达式D)可以是任何表达式3、以下程序的输出结果是()。main(){floatx=2,y;if(x<0)y=0;elseif(x<5&&!x)y=1/(x=2);elseif(x<10)y=1/x;elsey=10;printf(“%f”,y);}A)0.
2、000000B)0.250000C)0.500000D)10.0000004、执行以下程序段后,a,b,c的值分别是()。inta,b=100,c,x=10,y=9;a=(--x==y++)?—x:++y;if(x<9)b=x++;c=y;A)9,9,9B)8,8,10C)9,10,9D)1,11,105、执行下列程序段后,x、y和z的值分别是()。intx=10,y=20,z=30;if(x>y)z=x;x=y;y=z;A)10,20,30B)20,30,30C)20,30,10D)30,30,206、以下程序的输出结果是()。main(){intw=4,x=3,
3、y=2,z=1;if(x>y&&(z==w))printf(“%d”,(wx?w:z>y?z:x));}A)1B)2C)3D)47、下面的程序段所表示的数学函数关系是()。y=-1;if(x!=0){if(x>0)y=1;}elsey=0;A)-1(x<0)B)1(x<0)y=0(x=0)y=-1(x=0)1(x>0)0(x>0)C)0(x<0)D)-1(X<0)y=-1(x=0)y=1(x=0)1(x>0)0(x>0)8、若执行以下程序时从键盘上输入3□4,则输出结果是()。main(){
4、inta,b,s;scanf(“%d%d”,&a,&b);s=a;if(a
5、se10:y=a-b;break;case11:y=a-b;case11:y=a*b;break;}}二、填空题(p115)1.if语句控制表达式只有其值为______时表示逻辑“真”,其值为__________表示逻辑“假”。(非00)2.if(!k)a=3;语句中的!k可以改写为________,使其功能不变。(k==0)3.表达“若
6、x
7、>4,则输出x,否则输出error!”,的if语句是______________。if(x>4
8、
9、x<-4)printf("%d",x);elseprintf("error!");或:x>4
10、
11、x<-4?printf("%d"
12、,x):printf("error!");或:if(abs(x)>4)printf("%d",x);elseprintf("error!");4.能正确表达“当x的值是[1,10]或[200,210]范围内的奇数时,输出x”的if语句是________。if((x%2!=0)&&((x>=1&&x<=10)
13、
14、(x>=200&&x<=210)))5、已知a=15,b=240;则表达式(a&b)&b
15、
16、b的结果为__________。(1)a:00001111&b:11110000=00000000&b:11110000=000000000(0为假)
17、
18、b:11110
19、0001(非0为真)=16.下列程序段的输出是__________。(k=1)inti=0,k=100,j=4;if(i+j)k=(i=j)?(i=1):(i=i+j);printf(“k=%d”,k);7.下列程序段当a的值为014和0x14时的执行结果分别是________。if(a=0xa
20、a>12)/*结果:a=014时输出:10!*/if(011&10==a)printf(“%d!”,a);/*a=0x14时输出:Right!11*/elseprintf(“Right!%d”,a);8.以下程序的输出是__________。($$$a=0)