C)(x>=y>=z) D)(x>=y)&(y>=z) 4. 设int a=3,b=4,c=5,则下面表达式中,值为0的表达式是( D ) D
A)'a'&&'b' B)a<=b C)a||b+c&&b-c D)!((a
int a=-1,b=4,k;
k=(++a<0)&&!(b--<=0); printf(―%d %d %d\\n‖,k,a,b); }
A)1 0 4 B)1 0 3 C)0 0 3 D)0 0 4 6. 以下程序的运行结果是( D )。 main( )
{ int k=4,a=3,b=2,c=1; printf(―\\n%d \\n‖,k
}
A)4 B)3 C)2 D)1
7. 若a=-14,b=3,则条件表达式 a
A)-14 B)-13 C)3 D)4
6. 已知:int n,i=1,j=2;执行语句n=i A)1,3 B)1,2 C)2,2 D)2,3 // j未进行自增7. 若执行下面的程序时从键盘上输入5,则输出是( B )。 B #include int x; scanf(―%d‖,&x); if(x++>5) printf(―%d\\n‖,x); //比较后自增,后自增 else printf(―%d\\n‖,x--); } A)7 B)6 C)4 D)5 8. 若执行下面的程序时从键盘上输入3和4,则输出是( B )。 B main( ) { int a,b,s; scanf(\s=a*b; if(a) printf(\else printf(\} 6 D )。 )。 打印 A)10 B)12 C)14 D)16 9. 假设x,y,z都为整型变量,下列正确的输入语句是( B )。 B A)INPUT x,y,z; B)scanf(\ C)scanf(\ D)read(\10. 以下程序的输出结果是( D )。 D main( ) { int a=-1,b=4,k; k=(++a<0)&&!(b--<=0); printf(―%d %d %d\\n‖,k,a,b); } A)1 0 4 B)1 0 3 C)0 0 3 D)0 0 4 11. 以下不正确的if语句形式是( A )。 C A)if(x>y && x!=y) ; B)if(x= =y) x+=y ; C) if(x != y) scanf(\ else scanf(\ D)if(x 12. 为了避免在嵌套的条件语句if――else中产生二义性,C语言规定:else子句总是与( B )配对。B A)缩排位置相同的if B)其之前最近的if C)其之后最近的if D)同一行上的if 13. 有一函数关系见下表: x y x<0 x=0 x-1 x x>0 x+1 下面程序中能正确表示上面关系的是( C )。 C //此题关键是if else配对 A)y=x+1; B)y=x-1; C)if (x<=0) D)y=x if (x>=0) if(x!=0) if(x<0) if(x<=0) if(x= =0) if(x>0) y=x-1; if(x<0) y=x; y= x+1; else y=x; y=x-1; else y=x-1; else y=x; else y=x+1; else y=x+1; 14. 请阅读以下程序: main( ) { int a=5,b=0,c=0; if(a=b+c) printf(\ \ e1se printf(\ } 以上程序输出结果为( D )。 D 7 A)有语法错不能通过编译 B)可以通过编译但不能通过连接 C)输出*** D)输出$$$ 15. 当a=1,b=3,c=5,d=4执行完下面一段程序后x 的值是( B )。 B if(a if(c if(b A)1 B)2 C)3 D)6 16. 若有条件表达式(exp) ? a++:b--;则以下表达式中能完全等价于表达式(exp)的 是( B )。 B A)(exp= =0) B)(exp!=0) C)(exp= = 1) D)(exp!=1) 17. 若运行时给变量x 输入12,则以下程序的运行结果是( A )。 A main() { int x,y; scanf(\ y=x>12?x+10: x-12; printf(\ } A)0 B)22 C)12 D)10 18. 以下程序的运行结果是( D )。 D main( ) { int k= 4,a=3,b=2,c=1; printf(\ } A)4 B )3 C)2 D)1 19. 执行以下程序段后、变量a,b,c的值分别是( B )。 B int x=10,y=9; int a,b,c; a=(- -x = = y++)?- -x:++y ; b=x ++; c=y; A)a=9,b= 9,c= 9 B)a=8,b=8,c=10 C)a=9,b= 10,c=9 D)a=1,b= 11,c=10 20. 若w,x,y,z,m均为int型变量,则执行下面语句后的m值是( A )。 A w= 1;x = 2;y= 3;z=4; m=(w 8 A)1 B)2 C) 3 D) 4 21. 若w=1,x = 2,y= 3,z=4,则条件表达式w A)4 B)3 C)2 D)1 22. 下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,并输出m、n中的较大者,请选择填空( )。 C #indude \ main( ) { int m=0,n=0; char c; while(( )!='\\n') { if(c>='A'&&C<='Z') m++ ; if(c>='a' &&c<='z') n++; } printf(\ } A)c=getchar( ); B)getchar( ) C)c=getchar( 23. 下面程序的运行结果是( )。 B #include { int k=0; char c='A'; do { switch(c++) { case 'A':k++;break; case 'B':k--; case 'C':k+=2;break; case 'D':k=k%2;continue; case 'E':k=k*10;break; default:k=k/3; } k++; }while(c<'G'); printf(\} A)k=3 B)k=4 C)k=2 D)k=0 24. 有以下程序 main( ) { 9 ) D)scanf(\ //手工一步一步执行char k; int i; for(i=1;i<3;i++) { scanf(\ switch(k) { case '0': printf(\ case '1': printf(\ } } } 程序运行时,从键盘输入:01<回车>,程序执行后的输出结果是( C )。 C A)another B)another C)another D)number number number number number another number 25. 设ch是char型变量,其值为'A',且有下面的表达式: ch=(ch>='A'&&ch<='Z')?(ch+32):ch 上面表达式的值是( B )。 B A)A B)a C) Z D) z 26. 若执行下面的程序时从键盘上输入5,则输出是( B )。 B #include int x; scanf(―%d‖,&x); if(x++>5) printf(―%d\\n‖,x); else printf(―%d\\n‖,x--); } A)7 B)6 C)4 D)5 27. 以下程序的输出结果是( C )。 C main( ) { int a=-1,b=1,k; if((++a<0)&&!(b--<=0)) printf(\ %d\\n\ else printf(\ %d\\n\ } A)-1 1 B)0 1 C)1 0 D)0 0 28. 下面的程序片段所表达的数学函数关系是( C )。 C y=-1; 10