12、
13、a==12
14、
15、a==13
16、
17、a=14C)a>10&&a<15D)!(a<=10)&&!(a>=15)A5.设x、y、z、t均为int型变量,则执行以下语句后,t的值为x=y=z=1;t=++x
18、
19、++y&&++z;A)不定值B)4C)1D)0C6.语句:printf("%d",(a=2)&&(b=-2));的输出结果是A)无输出B)结果不确定C)-1D)1D7.能正确表示a和b同时为正或同时为负的逻辑表达式是A)(a>=0
20、
21、b>=0)&&(a<0
22、
23、b<0)B)(a>=0&&b>=0)&&(a<0&&b<0)C)(a+b>0&&a+b<=
24、0)D)a*b>0D8.为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。A)缩排位置相同的ifB)在其之前未配对的ifC)在其之前未配对的最近的ifD)同一行上的ifC9.已知intx=10,y=20,z=30,则执行if(x>y)z=x;x=y;y=z;语句后,x、y、z的值是()。A)x=10,y=20,z=30B)x=20,y=30,z=30C)x=20,y=30,z=10D)x=20,y=30,z=20B10.执行下面程序的输出结果是()。main(){inta=5,b=0,c=0;if(a=a+b)printf("****");e
25、lseprintf("####");}A)有语法错误不能编译B)能通过编译,但不能通过连接C)输出****D)输出####C11.运行下面程序后,输出是()。main(){intk=-3;if(k<=0)printf("****")elseprintf("####");}A)####B)****C)####****D)有语法错误不能通过编译D12.若运行下面程序时,给变量a输入15,则输出结果是()。main(){inta,b;scanf("%d",&a);b=a>15?a+10:a-10;printf("%d",b);}A)5B)25C)15D)10A13.以下
26、选项中,两个条件语句语义等价的是()。A)if(a=2)printf("%d",a);B)if(a-2)printf("%d",a);if(a==2)printf("%",a);if(a!=2)printf("%",a);C)if(a)printf("%d",a);D)if(a-2)printf("%d",a);if(a==0)printf("%",a);if(a==2)printf("%",a);B14.在执行以下程序时,为了使输出结果为:t=4则给a和b输入的值应满足的条件是main(){ints,t,a,b;scanf("%d,%d",&a,
27、&b);s=1;t=1;if(a<0)s=s+1;if(a>b)t=s+t;elseif(a==b)t=5;elset=2*s;printf("t=%d",t);}A)a>bB)aa>bD)0main(){inta=2,b=
28、7,c=5;switch(a>0){case1:switch(b<0){case1:printf("@");break;case0:printf("!");break;}case0:switch(c==5){case0:printf("*");break;case1:printf("#");break;default:printf("%%");break;}default:printf("&");}printf("");}A)&B)!#&C)%%D)@*&B17.运行下面程序