选择题:(有答案)
1、有以下程序执行后的输出结果是( )。 main( )
{ int i,s=0;
for(i=1;i<10;i+=2) s+=i+1; printf(\"%d\\n\
A.自然数1~9的累加和 B.自然数1~10的累加和
C.自然数1~9中的奇数之和 D.自然数1~10中的偶数之和 2、以下关于for语句的说法不正确的是()。 A. for循环只能用于循环次数已经确定的情况 B. for循环是先判断表达式,后执行循环体语句 C. for循环中,可以用break跳出循环体
D. for循环体语句中,可以保含多条语句,但要用花括号括起来 3、若i和k都是int类型变量,有以下for语句 for(i=0,k=-1;k=1;k++) printf(\"*****\\n\");
下面关于语句执行情况的叙述中正确的是( )。 A.循环体执行两次 B.循环体执行一次 C.循环体一次也不执行 D.构成无限循环
4、若运行以下程序时,输入2473↙,则程序的运行结果是:( ) main ( ) { int c;
while ((c=getchar( )) ! =’\\n’) switch (c-‘2’) { case 0 :
case 1 : putchar (c+4) ;
case 2 : putchar (c+4) ; break ; case 3 : putchar (c+3) ;
default : putchar (c+2) ; break ; }
printf(“\\n”); }
A)6677 B)6666 C)66778777 D)6688766 5、以下for循环的执行次数是:() 。 for (x=0,y=0; (y=123) && (x<4) ; x++) ;
A)无限循环 B)循环次数不定 C)4次 D)3次
6、已知 int t=0; while(t=1){...} 则以下叙述正确的是()。A)循环控制表达式的值为0 B)循环控制表达式的值为1 C)循环控制表达式不合法 D)以上说法都不对
7、设有以下程序段() int x=0,s=0;
while(!x!=0)s+=++x; printf(\"%d\); 则 A)运行程序段后输出0 B)运行程序段后输出1
C)程序段中的控制表达式是非法的 D)程序段执行无限次
8、设i,j,k均为int型变量,则执行完下面的for语句后,k的值为(for(i=0, j=10; i<=j; i++, j- -) k=i+j;
A.6 B.9 C.10 D.11 9、C语言中,break; 语句可以用于循环语句和( )语句中。 A.if B.switch C.for D.while
10、for(i=0; i<=15; i++) printf(\"%d\循环结束后,i 的值为(A.14 B.15 C.16 D.17
第 1 页 共 16 页
)。 )。 11.有以下程序 main()
{ char b,c; int i; b='a'; c='A'; for(i=0;i<6;i++)
{ if(i%2) putchar(i+b); else putchar(i+c); } printf(\"\\n\");}
程序运行后的输出结果是( )
A. ABCDEF B. AbCdEf C. aBcDeF D. abcdef 12、与语句“while(!x)”等价的语句是()。
A. while(x==0) B. while(x!=0) C. while(x==1) D. while(x!=1) 13、下面程序段的运行结果是( ) 。 x=y=0;
while (x<15) y++,x+=++y ; printf(“%d,%d”,y,x);
A)20,7 B)6,12 C)20,8 D)8,20 14、以下程序中,while循环的次数是( )。 #include while(i<10) { if(i<1) continue; if(i= =5)break; i++;}} A. 1 B. 死循环,不能确定次数 C. 6 D. 10 15.下面程序段 int k=2; while (k=0) {printf(“%d”,k);k--;} 则下面描述中正确的是( ) 。 A)while循环执行10次 B)循环是无限循环 C)循环题语句一次也不执行 D)循环体语句执行一次 16.以下程序段的循环次数是( ) 。 for (i=2; i==0; ) printf(“%d” , i--) ; A)无限次 B)0次 C)1次 D)2次 17.下面程序的输出结果是()。 main ( ) { char c='A’; int k=0; do { switch (c++) { case ‘A’ : k++ ; break ; case ‘B’ : k-- ; case ‘C’ : k+=2 ; break ; case ‘D’ : k%=2 ; continue ; case ‘E’ : k*=10 ; break ; default : k/=3 ; } k++; } while (c<’G’) ; printf (“k=%d”,k) ; } A)k=3 B)k=4 C)k=2 D)k=0 19.下面程序的输出结果是 ()。 main ( ) { int x=9; for (; x>0; x--) { if (x%3==0) { printf(“%d”,--x); continue ; } } } A)741 B)852 C)963 D)8721 第 2 页 共 16 页 20. int i=100;以下不是死循环的程序段是() 。 A)while (1) {i=i%100+1 ;if (i>100) break ;} B)for ( ; ; ) ; C) int k=0; do { ++k; } while (k>=0); D)int s=36;while(s) ;--s ; 21.下述程序段的运行结果是()。 int a=1,b=2, c=3, t=4; while (a22.下面程序的功能是从键盘输入一组字符,从中统计大写字母和小写字母的个数,选择() 填空。 main ( ) { int m=0,n=0; char c; while ((【 】) != ‘\\n’) { if (c>=’A’ && c<=’Z’) m++; if (c>=’a’ && c<=’z’) n++; } } A)c=getchar( ) B)getchar( ) C)c==getchar( ) D)scanf(“%c”,&c) 23.下述语句执行后,变量k的值是() 。 int k=1; while (k++<10); A)10 B)11 C)9 D)无限循环,值不定 24.下面程序的输出结果是() 。 main ( ) { int k=0,m=0,i,j; for (i=0; i<2; i++) { for (j=0; j<3; j++) k++ ; k-=j ; } m = i+j ; printf(“k=%d,m=%d”,k,m) ; } A)k=0,m=3 B)k=0,m=5 C)k=1,m=3 D)k=1,m=5 25.下面for循环语句 。( ) int i,k; for (i=0, k=-1; k=1; i++, k++) printf(“***”); A)判断循环结束的条件非法 B)是无限循环 C)只循环一次 D)一次也不循环 26.语句while (!E); 括号中的表达式!E等价于( ) 。 A)E==0 B)E!=1 C)E!=0 D)E==1 27. 以下不是死循环的语句是( ) 。 A)for (y=9,x=1;x>++y;x=i++) i=x ; B)for ( ; ; x++=i ) ; C)while (1) { x++ ; } D)for (i=10 ; ; i--) sum+=i ; 28.执行语句for (i=1;i++<4;) ; 后变量i的值是( )。 A)3 B)4 C)5 D)不定 29.以下程序段( ) 。 x=-1; do { x=x*x; } while (!x); A)是死循环 B)循环执行2次 C)循环执行1次 D)有语法错误 第 3 页 共 16 页 30.下面程序的功能是在输入的一批正数中求最大者,输入0结束循环,选择填空。 ( ) main ( ) { int a,max=0; scanf(“%d”,&a);
Copyright © 2019- dfix.cn 版权所有 湘ICP备2024080961号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务