4章选择结构程序设计C语言入门习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第四章 选择结构程序设计

一、选择题 1、有以下程序

main()

{ int i=1,j=2,k=3;

if(i++==1&&(++j==3||k++==3))

printf("%d %d %d\n",i,j,k);} 程序运行后的输出结果是

A )1 2 3

B )2 3 4

C )2 2 3

D )2 3 3 2、以下程序段中与语句k=a>b?(b>c?1:0):0;功能等价的是

A) if((a>B) &&(b>C) ) k=1; B) if((a>B) ||(b>C) ) k=1

else k=0;

C) if(a<=B) k=0; D) if(a>B) k=1;

else if(b<=C) k=1; else if(b>C) k=1; else k=0;

3、 若x 和y 代表整型数,以下表达式中不能正确表示数学关系|x-y|<10的是

A) abs(x-y)<10 B) x-y>-10&& x-y<10 C) @(x-y)<-10||!(y-x)>10 D) (x-y)*(x-y)<100 4、 下列条件语句中,功能与其他语句不同的是

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); 5、有定义语句:int a=1,b=2,c=3,x; 则以下选项中各程序段执行后,x 的值不为3的

A) if (c

6、已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是 A) 6 B) 0 C) 2 D) 1

7、有一函数,

0x 0x 0

x 101y <=>-=

⎪⎩⎪

⎨⎧,以下程序段中不能根据x值正确计算出y值的是

A) if(x>0) y=1; B) y=0; C )y=0; D )if(x>=0)

else if(x==0) y=0; if(x>0) y=1; if(x>=0); if(x>0) y=1; else y=-1; else if(x<0) y=-1; if(x>0) y=1; else y=0;

else y=-1; else y=-1;

8、以下程序的输出结果是

main()

{ int a=5,b=4,c=6,d;printf("%d\n",d=a>b?(a>c?a:c):(b));}A) 5 B) 4 C) 6 D) 不确定

9、 有以下程序

main()

{ int a=5,b=4,c=3,d=2; if(a>b>c)printf("%d\n",d);

else if((c-1>=d)==1)printf("%d\n",d+1);

else printf("%d\n",d+2);}执行后输出结果是 A) 2 B ) 3 C) 4 D) 编译时有错,无结果

10、以下程序的输出结果是 main(){ int a=4,b=5,c=0,d;d=!a&&!b||!c;printf("%d\n",d);} A) 1 B) 0 C) 非0的数 D) -1

二、填空题 1.当a=3,b=2,c=1时,表达式f=a>b>c 的值是________。 2.当a=5,b=4,c=2时,表达式a>b! =c 的值是________。 3.在C 语言中,表示逻辑“真”值用________。 4.设y 为int 型变量,请写出描述“y 是奇数”的表达式________。 5.C 语言提供的三种逻辑运算符是________、________、________。 6.设x ,y ,z 均为int 型变量,请写出描述“x 或y 中有一个小于z ”的表达式________。 7.设x ,y ,z 均为int 型变量,请写出描述“x ,y 和z 中有两个为负数”的表达式________。 8.已知A=7.5,B=2,C=3.6,表达式 A>B && C>A | | AB 的值是________。 9.若a=6,b=4,c=2,则表达式 ! (a-b )+c-1 && b+c/2的值是________。 10.若a=2,b=4,则表达式 !(x=a )| |(y=b )&& 0的值是________。 11.若a=1,b=4,c=3,则表达式 !(ac )后;n 的值为________,m 的值为________。