答案:ABDE 若有int a,c;char b;并通过scanf(\,&a,&b,&c);对a赋于整数10,b赋予字符M,c赋予整数33的值,下面正确的输入形式是:( )(注:符号︻代表空格) A、10<回车>M<回车> 33<回车> B、10M33<回车>
C、 10︻M︻33<回车> D、10M<回车>33<回车> E、10M︻<回车>33<回车> 答案:BDE
若有 char ch;,下面可以对变量c正确赋值的语句是:( A.ch =‘A’; B.getchar(ch); C.ch = getchar(); D.scanf(“%c”,&ch); E.printf(“%c”,ch=‘B’); 答案:ACDE
下面属于转义符的有:( )
A.‘\\t ’ B.‘\\n’ C.‘%d’ D.‘\\376’答案:ABDE
若a为整型变量,则下列表达式的值为0的是( ), A.a % a B.a != a
C.3/4 D.3 && 0 E.a = 0
答案:ABCDE
第5、6章 选择与循环结构 一、选择题 1. 有以下程序 main( )
{ int i;
for ( i=0; i<3; i++ )
switch ( i )
{ case 1 : printf(\ case 2 : printf(\ default : printf(\ }
}
执行后输出结果是:( )
A)011122 B)012 C)012020 D)120 答案:A
2. 有以下程序
E.‘\\x20’ ) main()
{ int i=1, j=1, k=2;
if ( (j++ || k++) && i++) printf(\ }
执行后输出结果是:( )
A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3 答案:C
3. 有以下程序 main()
{ int a=5,b=4,c=3,d=2; if (a>b>c)
printf(\ else if ( (c-1 >= d) ==1) printf(\ else
printf(\ }
执行后输出结果是:( )
A)2 B)3 C)4 D)编译时有错,无结果 答案:B 4. 有以下程序 main()
{ int i=0,s=0; do { if (i%2) { i++; continue; }
i++; s += i;
} while( i<7 );
printf(\ }
执行后输出结果是:( )
A)16 B)12 C)28 D)21 答案:A
5. 以下程序的输出结果是:( ) main()
{ int a=5,b=4,c=6,d;
printf(\ }
A) 5 B) 4 C) 6 D) 不确定
答案:C
6. 以下程序中,7. while循环的循环次数是:( ) main()
{ int i=0;
while(i<10)
{ if(i<1) continue; if(i==5) break; i++; }
}
A) 1 B) 10 C) 6 D) 死循环,不能确定次数 答案:D
8. 以下程序的输出结果是:( ) main( )
{ int a=0,i; for(i=1;i<5;i++) switch(i)
{ case 0:
case 3: a+=2; case 1:
case 2: a+=3; default: a+=5; }
printf(\
}
A) 31 B) 13 C) 10 D) 20 答案:A
9. 以下程序的输出结果是:( ) main()
{ int a=4,b=5,c=0,d; d=!a && !b || !c; printf(\ }
A) 1 B) 0 C) 非0的数 答案:A
10. 以下程序的输出结果是:( ) #include main()
{ int i=0,a=0; while(i<20)
{ for( ; ; ) { if((i)==0) break; else i--; }
i+=11; a+=i; }
printh(\
D) -1 }
A) 21 B) 32 C) 33 D) 11 答案:B
11. 阅读以下程序:( ) main() { int x;
scanf(\ if(x--<5) printf(\ else printf(\
}
程序运行后,如果从键盘上输人5,则输出结果是:( )A)3 B) 4 C) 5 D) 6 答案:B
12. 假定w、x、y、z、m均为int型变量,13. 有如下程序段: w=1; x=2; y=3; z=4;
m=(w 14. 以下程序的输出结果是:( ) main() { int a, b; for(a=1, b=1; a<=100; a++) { if(b>=10) break; if (b%3==1) { b+=3; continue; } } printf(\ } A) 101 B) 6 C) 5 D) 4 答案:D 15. 若执行以下程序时从键盘上输入9,16. 则输出结果是:( main() { int n; scanf (\ if(n++<10) printf (\ else printf(\ } A) 11 B) 10 C) 9 D) 8 答案:B 17. 有以下程序段 ) int k=0 while(k=1) k++; 则while 循环执行的次数是:( ) A) 无限次 B) 有语法错,不能执行 C) 一次也不执行 D) 执行1次 答案:A 18. 以下程序执行后sum的值是:( ) main() { int i , sum; for(i=1;i<6;i++) sum+=i; printf(\ } A)15 B)14 C) 不确定 D)0 答案:A 19. 有以下程序段 int x=3 do { printf (\}while (!(--x)); 其输出结果是:( ) A) 1 B) 3 0 C) 1 -2 D) 死循环 答案:C 20. 若变量c为char类型,21. 能正确判断出c为小写字母的表达式是:( A) 'a'<=c<= 'z' B) (c>= 'a')||(c<= 'z') C) ('a'<=C)and ('z'>=c) D) (c>= 'a')&&(c<= 'z') 答案:D 22. 以下程序的输出结果是:( ) main() { float x=0.5; char z='a'; printf(\ } A) 0 B) 1 C) 2 D) 3 答案:A 23. 以下程序的输出结果是:( ) main() { int x=10,y=10,i; for(i=0;x>8;y=i ) printf(“%d %d ”,x--,y); } A)10 1 9 2 B)9 8 7 6 C)10 9 9 0 D)10 10 9 0 答案:D 24. 以下程序的输出结果是:( ) )