《c语言循环结构练习(24页).doc》由会员分享,可在线阅读,更多相关《c语言循环结构练习(24页).doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
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 D.1 .标准答案:B考生答
3、案:6. 下述程序的输出结果是( )。#includemain() 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(yx)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.32,28,7.5 .标准答案:C考生答案:8. 以下程序段的输出结果是()int x=0,y=5,z=3;whil
4、e(z-0&+x5) 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=2, c2=0; while(!c2-) printf(%d,%d, c1-, c2); (2分)A.1,-1 B.不输出任何内容 C.2,-1 D.2,0 .标准答案:C考生答案:
5、11. 运行以下程序后,如果从键盘上输入china#main()intv1=0,v2=0;charch;while(ch=getchar()!=#)switch(ch)casea:caseh:default:v1+;case0:v2+;printf(%d,%dn,v1,v2); (2分)A.2,0B.5,0C.5,5D.2,5.标准答案:C考生答案:12. main()intp7=11,13,14,15,16,17,18,i=0,k=0;while(i7&pi%3) k=k+pi;i+;printf(%dn,k);执行后输出结果是() (2分)A.58B.53C.38D.24.标准答
6、案:C考生答案:13. 有以下程序段:intx=3;doprintf(%d,x-=2);while(!(-x);其输出结果是() (2分)A.1B.30C.1-2D.死循环.标准答案:C考生答案:14. 以下叙述正确的是() (2分)A.do-while语句构成的循环不能用其它语句构成的循环来代替。B.do-while语句构成的循环只能用break语句退出。C.用do-while语句构成的循环,在while后的表达式为非零时结束循环。D.用do-while语句构成的循环,在while后的表达式为零时结束循环.标准答案:D考生答案:15. 以下程序段的输出是()intx=7,y=5,z=1;do
7、if(!(z%x)if(!(z%y)printf(%d,z);break;z+;while(z!=0); (2分)A.70B.35C.105D.140.标准答案:B考生答案:16. 有以下程序段:intx=23;doprintf(%d,x-);while(!x);其输出结果是() (2分)A.321B.23C.不输出任何内容D.死循环.标准答案:B考生答案:17. 有以下程序段:ints=0,a=1,n;scanf(%d,&n);dos+=1;a=a-2;while(a!=n);printf(%dn,s);若要使程序的输出值为2,则应该从键盘给n输入的值是() (2分)A.-1B.-3C.-5
8、D.0.标准答案:B考生答案:18. 有以下程序段:inti=0,s=0;doif(i%2)i+;continue;i+;s+=i;while(i7);printf(%dn,s);其输出结果是() (2分)A.16B.13C.28D.21.标准答案:A考生答案:19. 下列程序段的输出结果是()inti,n=0;for(i=2;i5;i+)doif(i%3)continue;n+;while(!i);n+;printf(n=%dn,n); (2分)A.n=5B.n=2C.n=3D.n=4.标准答案:D考生答案:20. 在C语言的循环语句for,while,do-while语句中,用于直接中断最
9、内层循环的语句是() (2分)A.switchB.continueC.breakD.if.标准答案:C考生答案:21. 执行以下语句后sum的值为()inti=10;sum=0;dosum+=i;i+;while(i3;j-)if(j%3)j-;-j;-j;printf(%d,j); (3分)A.63B.74C.62D.73.标准答案:B考生答案:24. 以下程序的输出结果是()main()inti,s=0;for(i=1;i10;i+=2)s+=i+1;printf(%dn,s); (3分)A.自然数1到9的累加和B.自然数1到10的累加和C.自然数1到9中奇数之和D.自然数1到10中偶数之
10、和.标准答案:D考生答案:25. 以下程序的输出结果是()main()inti;for(i=A;iI;i+,i+)printf(%c,i+32);printf(n); (3分)A.编译不通过,无输出B.acegC.acegiD.abcdefghi.标准答案:B考生答案:26. 下述for语句,假定运行时输入的值不是876inti,x;for(i=0,x=1;i=9&x!=876;i+)scanf(%d,&x); (3分)A.循环10次B.循环9次C.无限循环D.一次也不循环.标准答案:A考生答案:27. 以下程序段的输出结果是()#includestdio.hmain()intk=4,n;fo
11、r(n=0;nk;n+)if(n%3!=0)continue;k-;printf(%d,%d,n,k); (3分)A.1,1B.2,2C.3,3D.4,4.标准答案:C考生答案:28. 以下程序执行后sum的值是()main()inti,sum;for(i=1;i6;i+)sum+=i;printf(%dn,sum); (3分)A.15B.14C.不确定D.0.标准答案:C考生答案:29. 以下程序的输出结果是()main()inti=0,s=0;for(;)if(i=3|i=5)continue;if(i=6)break;i+;s+=i;printf(%dn,s); (3分)A.10B.13
12、C.21D.程序进入死循环.标准答案:D考生答案:30. 下面程序段的输出结果是()inta=1,b;for(b=1;b=8)break;if(a%2=1)a+=5;continue;a-=3;printf(%dn,b); (3分)A.3B.4C.5D.6.标准答案:B考生答案:31. 下列程序的输出结果是()main()inti,j,m=0,n=0;for(i=0;i2;i+)for(j=0;j=i)m=1;n+;printf(%dn,n); (3分)A.4B.3C.2D.1.标准答案:D考生答案:32. 下列程序段的输出结果是()intk=0,m=0;inti,j;for(i=0;i2;i
13、+)for(j=0;j3;j+)k+;k-=j;m=i+j;printf(k=%d,m=%d,k,m); (3分)A.k=0,m=3B.k=0,m=5C.k=1,m=3D.k=1,m=5.标准答案:B考生答案:33. 以下程序的输出结果是main()inti,j,x=0;for(i=0;i2;i+)x+;for(j=0;j3;j+)if(j%2)continue;x+;x+;printf(x=%dn,x); (3分)A.x=4B.x=8C.x=6D.x=12.标准答案:B考生答案:34. 以下循环体的执行次数是()main()inti,j;for(i=0,j=1;i=j+1;i+=2,j-)p
14、rintf(%dn,i); (3分)A.3B.2C.1D.0.标准答案:C考生答案:35. 以下程序段的输出结果为()intx,i;for(i=1;i100) break;B.for(;) ;C.int k=0;do+k;while(k10);D.int s=36;while(s); -s;.标准答案:C考生答案:37. 以下程序的输出结果是()main()inti;for(i=1;i6;i+)if(i%2)printf(#);continue;printf(*); (3分)A.#*#*#B.#C.*D.*#*#*.标准答案:A考生答案:38. 以下程序的输出结果是()main()inta,b
15、;for(a=1,b=1;a=10)break;if(b%3=1)b+=3;continue;printf(%dn,a); (3分)A.101B.6C.5D.4.标准答案:D考生答案:39. 设x和y均为int型变量,则执行以下的循环后,y值为()for(y=1,x=1;y=50;y+)if(x=10)break;if(x%2=1)x+=5;continue;x-=3; (3分)A.2B.4C.6D.8.标准答案:C考生答案:40. 下面程序段的输出结果为()inti,s;s=0;for(i=1;i5)break;printf(s=%dn,s); (3分)A.5050B.6C.5D.0.标准答案:B考生答案:第 24 页-