c语言循环结构练习_第1页
c语言循环结构练习_第2页
c语言循环结构练习_第3页
c语言循环结构练习_第4页
c语言循环结构练习_第5页
已阅读5页,还剩5页未读 继续免费阅读

VIP免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2015-2016(2)循环结构练习题一、单选题 (共40题,共100分)1. 以下正确的描述是( ) (2分)A.continue语句的作用是结束整个循环的执行B.只能在循环体内和switch语句体内使用break语句C.在循环体内使用break语句或continue语句的作用相同D.从多层循环嵌套中退出时,只能使用goto语句.标准答案:B考生答案:2. 下面的关键字中,不能够从循环体中跳出循环体外的是() (2分)A.goto B.break C.return D.continue .标准答案:D考生答案:3. 以下叙述中错误的是() (2分)A.语句标号是由合法的标识符后面加一个冒号构

2、成B.goto语句的作用是把程序的执行转向语句标号所在的位置C.goto语句必须与语句标号在同一个函数内D.结构化程序设计主张使用goto语句,使用goto语句的程序可读性强.标准答案:D考生答案:4. 有以下程序段,while 循环执行的次数是()int k=0;while(k=1)k+; (2分)A.无限次 B.有语法错,不能执行 C.一次也不执行 D.执行1次 .标准答案:A考生答案:5. 运行以下程序的结果为( )main()int num=0;while (num<=2)num+;printf("%d",num); (2分)A.1234 B.123 C.12

3、 D.1 .标准答案:B考生答案:6. 下述程序的输出结果是( )。#include<stdio.h>main() int Y=100;while(Y-);printf("y=%d",Y); (2分)A.Y=0 B.Y=1 C.Y=随机值 D.Y=-1 .标准答案:D考生答案:7. 执行下面的程序后的输出结果为( )int x,y,z;x=20,y=40,z=15;while(y>x)x+=4,y-=4;z/=2;printf("%d,%d,%d",x,y,z); (2分)A.40,36,30 B.32,8,7 C.32,28,7 D.

4、32,28,7.5 .标准答案:C考生答案:8. 以下程序段的输出结果是()int x=0,y=5,z=3;while(z->0&&+x<5) y=y-1;printf("%d,%d,%dn",x,y,z); (2分)A.3,2,0 B.3,2,-1 C.4,3,-1 D.5,-2,-5 .标准答案:B考生答案:9. 下述语句执行后,变量k的值是()int k=1;while(k+<10); (2分)A.10 B.11 C.9 D.此为无限循环,值不定 .标准答案:B考生答案:10. 下面程序的运行结果是( )。main() int c1=

5、2, c2=0; while(!c2-) printf("%d,%d", c1-, c2); (2分)A.1,-1 B.不输出任何内容 C.2,-1 D.2,0 .标准答案:C考生答案:11. 运行以下程序后,如果从键盘上输入china#main( ) int v1=0,v2=0; char ch  while(ch=getchar()!='#') switch(ch)    case 'a': 

6、0;case 'h':  default: v1+;  case '0': v2+;   printf("%d,%dn",v1,v2); (2分)A.2,0           B.5,0           C.5,

7、5           D.2,5           .标准答案:C考生答案:12. main( )int p7=11,13,14,15,16,17,18, i=0,k=0;while(i<7&&pi%3)&nbsp;k =k+ pi; i+; printf("%dn

8、", k); 执行后输出结果是( ) (2分)A.58            B.53            C.38            D.24    &

9、#160;       .标准答案:C考生答案:13. 有以下程序段: int x=3; do  printf("%d",x-=2); while(!(-x); 其输出结果是( ) (2分)A.1             B.30      

10、;      C.1-2           D.死循环        .标准答案:C考生答案:14. 以下叙述正确的是(  ) (2分)A.do-while语句构成的循环不能用其它语句构成的循环来代替。B.do-while语句构成的循环只能用break语句退出。C.用do-while语句构成的循环,在while后的表达式为非零

11、时结束循环。D.用do-while语句构成的循环,在while后的表达式为零时结束循环.标准答案:D考生答案:15. 以下程序段的输出是()int x=7,y=5,z=1;do if(!(z%x)   if(!(z%y)   printf("%d",z);break; z+;while(z!=0); (2分)A.70            B.35 

12、0;          C.105           D.140           .标准答案:B考生答案:16. 有以下程序段:int x=23;do printf("%d",x-);while(!x);其输出结果是( &#

13、160;) (2分)A.321                         B.23                      

14、;    C.不输出任何内容              D.死循环                      .标准答案:B考生答案:17. 有以下程序段:int s=0,a=1,n;sca

15、nf("%d",&n);do  s+=1;a=a-2;while(a!=n);printf("%dn",s);若要使程序的输出值为2,则应该从键盘给n输入的值是(  ) (2分)A.-1            B.-3            C.-5  

16、;          D.0             .标准答案:B考生答案:18. 有以下程序段:int i=0,s=0;do  if(i%2)i+;continue;  i+;s+=i;while(i<7);printf("%dn",s);其输出结果是(  ) (2分)

17、A.16            B.13            C.28            D.21           &#

18、160;.标准答案:A考生答案:19. 下列程序段的输出结果是()int i,n=0;for(i=2;i<5;i+)  do     if(i%3)continue;   n+;  while(!i);  n+;printf("n=%dn",n); (2分)A.n=5           B.n=2 &

19、#160;         C.n=3           D.n=4           .标准答案:D考生答案:20. 在C语言的循环语句for,while,do-while语句中,用于直接中断最内层循环的语句是() (2分)A.switch   

20、0;    B.continue      C.break         D.if            .标准答案:C考生答案:21. 执行以下语句后sum的值为 (   )int i=10;sum=0;dosum+=i; i

21、+;while(i<10); (2分)A.0             B.1             C.11            D.10      

22、      .标准答案:D考生答案:22. 以下程序段满足什么条件时循环会结束:int n=0,p;doscanf("%d",&p);n+;while(p!=12345&&n&lt;3); (2分)A.p的值不等于12345并且n的值小于3B.p的值等于12345并且n的值大于等于3C.p的值不等于12345或者n的值小于3D.p的值等于12345或者n的值大于等于3.标准答案:D考生答案:23. 设j为int型变量,则下面for循环语句的执行结果是(  

23、; )     for(j=10;j>3;j-)      if(j%3) j-;       -j;-j;       printf("%d ",j);      (3分)A.6 3    &

24、#160; B.7 4      C.6 2      D.7 3      .标准答案:B考生答案:24. 以下程序的输出结果是(  )main() int i,s=0;for (i=1;i<10;i+=2) s+=i+1;printf("%dn",s); (3分)A.自然数1到9的累加和&

25、#160;         B.自然数1到10的累加和         C.自然数1到9中奇数之和        D.自然数1到10中偶数之和       .标准答案:D考生答案:25. 以下程序的输出结果是(  )main() int&#

26、160;i; for(i='A'i<'I'i+,i+)printf("%c",i+32);  printf("n"); (3分)A.编译不通过,无输出          B.aceg                 

27、60;      C.acegi                       D.abcdefghi                 

28、60; .标准答案:B考生答案:26. 下述for语句,假定运行时输入的值不是876int i,x;for(i=0,x=1;i<=9&&x!=876;i+) scanf("%d",&x); (3分)A.循环10次                    B.循环9次    

29、0;                C.无限循环                    D.一次也不循环           &#

30、160;    .标准答案:A考生答案:27. 以下程序段的输出结果是()#include "stdio.h"main() int k=4,n; for(n=0;n<k;n+)   if(n%3!=0)continue; k-;  printf("%d,%d",n,k); (3分)A.1,1          &

31、#160;B.2,2           C.3,3           D.4,4           .标准答案:C考生答案:28. 以下程序执行后sum的值是(  )main() int i,sum;for(i=1;i<

32、;6;i+) sum+=i;printf("%dn",sum); (3分)A.15            B.14            C.不确定        D.0      

33、0;      .标准答案:C考生答案:29. 以下程序的输出结果是()main() int i=0,s=0; for(;)   if(i=3|i=5)continue;  if(i=6) break;  i+;  s+=i;  printf("%dn",s); (3分)A.10       

34、60;                  B.13                          C.21    &

35、#160;                     D.程序进入死循环              .标准答案:D考生答案:30. 下面程序段的输出结果是()int a=1,b;for(b=1;b<=10;b+)  

36、if(a>=8) break;  if(a%2=1)a+=5;continue;  a-=3;printf("%dn",b); (3分)A.3             B.4             C.5     

37、;        D.6             .标准答案:B考生答案:31. 下列程序的输出结果是(  )main( )   int i, j, m=0, n=0;  for(i=0; i<2; i+)   f

38、or(j=0; j<2; j+)    if(j>=i) m=1; n+;  printf("%dn",n); (3分)A.4             B.3             C.2 

39、60;           D.1             .标准答案:D考生答案:32. 下列程序段的输出结果是()int k=0,m=0;int i,j;for(i=0;i<2;i+) for(j=0;j<3;j+)   k+; k-=j;m=i+j;printf(&quo

40、t;k=%d,m=%d",k,m); (3分)A.k=0,m=3       B.k=0,m=5       C.k=1,m=3       D.k=1,m=5       .标准答案:B考生答案:33. 以下程序的输出结果是main() int i,j,x=0;  f

41、or(i=0;i<2;i+)   x+;    for(j=0;j<3;j+)     if(j%2) continue;     x+;        x+;    printf("x=%dn",x); (3分)A.x=4   

42、0;       B.x=8           C.x=6           D.x=12          .标准答案:B考生答案:34. 以下循环体的执行次数是(  )main()&

43、#160;int i,j; for(i=0,j=1;i<=j+1;i+=2,j-)    printf("%d n",i); (3分)A.3             B.2             C.1   &#

44、160;         D.0             .标准答案:C考生答案:35. 以下程序段的输出结果为()     int x, i;     for(i=1;i<=50;i+)     

45、60;x=i;    if(x%2=0)           x+;       if(x%3=0)                x+;       

46、; if(x%7=0)          x+;printf("%d ",i);              (3分)A.28            B.27    

47、60;       C.42            D.26            .标准答案:D考生答案:36. 以下程序段不是死循环的是( ) (5分)A.int i=100;while(1) i=i%100+1; if(i>100) break;B.for(;) ;C

48、.int k=0;do+k;while(k<10);D.int s=36;while(s); -s;.标准答案:C考生答案:37. 以下程序的输出结果是(  ) main()  int i;  for(i=1;i<6;i+)    if(i%2)printf("#");continue;    printf("*");     (3分)A.#*#*#         B.#         C.*         D.*#*#*         .

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论