C语言循环结构选择题新.docx
- 文档编号:6984642
- 上传时间:2023-01-14
- 格式:DOCX
- 页数:24
- 大小:20.97KB
C语言循环结构选择题新.docx
《C语言循环结构选择题新.docx》由会员分享,可在线阅读,更多相关《C语言循环结构选择题新.docx(24页珍藏版)》请在冰豆网上搜索。
C语言循环结构选择题新
一、选择题
1、语句while(!
e);中的条件!
e等价于()。
A)e==0B)e!
=1
C)e!
=0D)~e
2、以下for循环是()。
for(x=0,y=0;(y!
=123)&&(x<4);x++)
A)无限循环B)循环次数不定
C)执行4次D)执行3次
3、对于for(表达式1;;表达式3)可理解为()。
A)for(表达式1;0;表达式3)
B)for(表达式1;1;表达式3)
C)for(表达式1;表达式1;表达式3)
D)for(表达式1;表达式3;表达式3)
4、C语言中while和do-while循环的主要区别是()。
A)do-while的循环体至少无条件执行一次
B)while的循环控制条件比do-while的循环控制条件严格
C)do-while允许从外部转到循环体内
D)do-while的循环体不能是复合语句
5、下面关于for循环的正确描述是()。
A)for循环只能用于循环次数已经确定的情况
B)for循环的循环体可以是一个复合语句
C)在for循环中,不能用break语句跳出循环体
D)for循环的循环体不能是一个空语句
6、若i为整型变量,则以下循环语句的循环次数是()。
for(i=2;i==0;)
printf("%d",i--);
A)无限次B)0次
C)1次D)2次
7、以下叙述正确的是()。
A)continue语句的作用是结束整个循环的执行
B)只能在循环体内和switch语句体内使用break语句
C)在循环体内使用break语句或continue语句的作用相同
D)从多层循环嵌套中退出时,只能使用goto语句
8、对下面程序段,描述正确的是()。
for(t=1;t<=100;t++)
{scanf("%d",&x);
if(x<0)continue;
printf("%d\n",t);
}
A)当x<0时,整个循环结束
B)当x>=0时,什么也不输出
C)printf函数永远也不执行
D)最多允许输出100个非负整数
9、对下面程序段叙述的正确的是()。
intk=0;
while(k=0)k=k-1;
A)while循环执行10次B)无限循环
C)循环体一次也不被执行D)循环体被执行一次
10、下面程序段中,循环体的执行次数是()。
inta=10,b=0;
do{b+=2;a-=2+b;}while(a>=0);
A)4B)5
C)3D)2
11、在下列选项中,没有构成死循环的程序段是
A)inti=100;
while
(1)
{i=i%100+1;
if(i>100)break;
}
B)for(;;);
C)intk=1000;
do{++k;}while(k>=1000);
D)ints=36;
while(s)--s;
12、以下程序的输出结果是
main()
{inta,b;
for(a=1,b=1;a<=100;a++)
{if(b>=10)break;
if(b%5==1){b+=5;continue;}}
printf("%d\n",a);}
A)101B)6
C)4D)3
13、若x是int型变量,且有下面的程序片段:
for(x=3;x<6;x++)
printf((x%2)?
("**%d"):
("##%d\n"),x);
上面程序片段的输出结果是
A)**3B)##3
##4**4
**5##5
C)##3D)**3##4
**4##5**5
14、以下程序的输出结果是()。
#include
main()
{
inti;
for(i=1;i<=5;i++)
if(i%2==1)
printf("*");
elsecontinue;
printf("#");
printf("$\n");
}
A)***#$B)#*#*#*$
C)*#*#*#$D)**#*$
15、下面程序的输出结果是()。
main()
{inti;
for(i=1;i<=5;i++)
{if(i%2==1)printf("*");
elsecontinue;
printf("#");
}
printf("$\n");
}
A)*#*#*#$B)#*#*#*$
C)#*#*$D)*#*#$
16、定义如下变量:
intn=10;
则下列循环的输出结果是()。
while(n>7)
{n--;printf("%d\n",n);}
A)10B)9C)10D)9
9898
8787
76
17、下面程序的输出结果是()。
main()
{intx=3;
do{
printf("%d",x-=2);
}while(!
(--x));
}
A)1B)1-2
C)30D)是死循环
18、下面程序的输出结果是()。
main()
{inty=9;
for(;y>0;y--)
{if(y%3==0)
{printf("%d",--y);
continue;}
}
}
A)741B)852
C)963D)875421
19、以下程序段的输出结果是()。
intk,n,m;
n=10;m=1;k=1;
while(k<=n){m*=2;k+=4;}
printf("%d\n",m);
A)4B)16
C)8D)32
20、设有如下程序段:
inti=0,sum=1;
do
{sum+=i++;}
while(i<6);
printf("%d\n",sum);
上述程序段的输出结果是()。
A)11B)16
C)22D)15
21、执行下面程序后sum的值是()。
main()
{inti,sum=0;
for(i=1;i<6;i++)
sum+=i;
printf("%d\n",sum);
}
A)15B)14
C)不确定D)0
22、以下程序的输出结果是()。
#include
main()
{intcount,i=0;
for(count=1;count<=4;count++)
{i+=2;printf("%d",i);}
}
A)20B)246
C)2468D)2222
23、下面程序的输出结果是()。
main()
{unsignedintnum,k;
num=26;k=1;
do{
k*=num%10;
num/=10;
}while(num);
printf("%d\n",k);
}
A)2B)12
C)60D)18
24、运行下面的程序,如果从键盘上分别输入6和4,则输出结果是()。
main()
{inti,x;
for(i=0;i<2;i++)
{scanf("%d",&x);
if(x++>5)printf("%d",x);
elseprintf("%d\n",x--);
}
}
A)7和5B)6和3
C)7和4D)6和4
25、阅读以下程序:
main()
{intx;
for(x=5;x>0;x--)
if(x--<5)printf("%d,",x);
elseprintf("%d,",x++);}
程序运行后的输出结果是()。
A)4,3,2B)4,3,1,
C)5,4,2D)5,3,1,
26、以下程序的功能是:
从键盘上输入若干个学生的成绩,统计并输出
最高成绩和最低成绩,当输入负数时结束输入。
请填空。
main()
{floatx,amax,amin;
scanf("%f",&x);
amax=x;
amin=x;
while(________)
{if(x>amax)amax=x;
if(______)amin=x;
scanf("%f",&x);
}
printf("\namax=%f\namin=%f\n",amax,amin);
}
A)x<=0B)x>0
x>aminx<=amin
C)x>0D)x>=0
x>aminx 27、下面程序是计算n个数的平均值,请填空。 main() {inti,n; floatx,avg=0.0; scanf("%d",&n); for(i=0;i {scanf("%f",&x); avg=avg+______;} avg=________; printf("avg=%f\n",avg); } A)iB)x avg/iavg/n C)xD)i avg/xavg/n 28、在执行以下程序时,如果从键盘上输入: ABCdef<回车>, 则输出为 #include main() {charch; while((ch=getchar())! ='\n') {if(ch>='A'&&ch<='Z')ch=ch+32; elseif(ch>='a'&&ch<'z')ch=ch-32; printf("%c",ch); } printf("\n"); } A)ABCdefB)abcDEF C)abcD)DEF 29、运行以下程序后,如果从键盘上输入: 6514<回车>, 则输出结果为 main() {intm,n; printf("Enterm,n: "); scanf("%d%d",&m,&n); while(m! =n) {while(m>n)m-=n; while(n>m)n-=m; } printf("m=%d\n",m); } A)m=3B)m=2 C)m=1D)m=0 30、下面程序的输出结果是()。 main() {intn=4; while(n--)printf("%d",n--); } A)20B)31 C)321D)210 31、下面程序的输出结果是()。 main() {inti; for(i=1;i<6;i++) {if(i%2){printf("#");continue;} printf("*"); } printf("\n"); } A)#*#*#B)##### C)*****D)*#*#* 32、有如下程序 main() {intx=23; do {printf("%d",x--);} while(! x); } 该程序的执行结果是 A)321B)23 C)不输出任何内容D)陷入死循环 33、有如下程序 main() {intn=9; while(n>6){n--;printf("%d",n);} } 该程序段的输出结果是 A)987B)876 C)8765D)9876 34、设有以下程序 main() {intn1,n2; scanf("%d",&n2); while(n2! =0) {n1=n2%10; n2=n2/10; printf("%d",n1); } } 程序运行后,如果从键盘上输入1298,则输出结果为()。 A)892B)8921 C)89D)921 35、下面程序的运行结果是()。 main() {inta,b; a=-1; b=0; do{ ++a; ++a; b+=a; }while(a<9); printf("%d\n",b); } A)34B)24 C)26D)25 36、执行下面程序段后,k的值是()。 inti,j,k; for(i=0,j=10;i k=i+j; A)9B)11 C)8D)10 37、下面程序段的运行结果是()。 for(x=10;x>3;x--) {if(x%3)x--; --x;--x; printf("%d",x); } A)63B)74 C)62D)73 38、下面程序段的运行结果是()。 for(i=1;i<=5;) printf("%d",i); i++; A)12345B)1234 C)15D)无限循环 39、下面程序的运行结果是()。 main() {ints=0,i=1; while(s<=10) {s=s+i*i; i++; } printf("%d",--i); } A)4B)3 C)5D)6 40、下面程序段的运行结果是()。 intx=0,y=0; while(x<15)y++,x+=++y; printf("%d,%d",y,x); A)20,7B)6,12 C)20,8D)8,20 41、下面程序段的运行结果是()。 intn=0; while(n++<=2) printf("%d",n); A)012B)123 C)234D)错误信息 42、下面程序的运行结果是()。 main() {inta=1,b=10; do {b-=a;a++;}while(b--<0); printf("%d,%d\n",a,b); } A)3,11B)2,8 C)1,-1D)4,9 43、下面程序的运行结果是()。 main() {intx=3,y=6,a=0; while(x++! =(y-=1)) {a+=1; if(y } printf("%d,%d,%d\n",x,y,a); } A)4,4,1B)5,5,1 C)4,4,3D)5,4,1 44、对下面程序段描述正确的是()。 intx=0,s=0; while(! x! =0)s+=++x; printf("%d",s); A)运行程序段后输出0 B)运行程序段后输出1 C)程序段中的控制表达式是非法的 D)程序段循环无数次 45、以下程序的输出结果是()。 #include main() { intnum=0; while(num<=2) {num++; printf("%d\n",num);} } A)1B)1C)1D)1 222 33 4 46、以下程序段()。 x=-1; do {x=x*x;} while(! x); A)是死循环B)循环执行两次 C)循环执行一次D)有语法错误 47、以下程序运行后的输出结果是()。 #include main() {ints=0,k; for(k=7;k>=0;k--) {switch(k) { case1: case4: case7: s++;break; case2: case3: case6: break; case0: case5: s+=2;break;} } printf("s=%d\n",s); } A)s=5B)s=1 C)s=3D)s=7 48、下列程序的输出结果是()。 main() {inti,j,k; for(i=0;i<=2;i++) {for(k=1;k<=i;k++)printf(""); for(j=0;j<=3;j++)printf("*"); printf("\n"); } } A)****B)**** ******** ******** C)****D)*** ******* ******* 49、以下程序段的执行结果是 inta,y; a=10;y=0; do {a+=2;y+=a; printf("a=%dy=%d\n",a,y); if(y>20)break; }while(a=14); . . . A)a=12y=12B)a=12y=12C)a=12y=12D)a=12y=12 a=14y=16a=16y=28a=14y=26 a=16y=20a=14y=44 a=18y=24 50、有如下程序 main() {inti,sum=0; for(i=1;i<=3;sum++)sum+=i; printf("%d\n",sum); } 该程序的执行结果是 A)6B)3 C)死循环D)0 51、以下程序运行后的输出结果是()。 main() {inti=10,j=0; do {j=j+1;i--;}12345678 while(i>2); printf("%d\n",j); } A)50B)52 C)51D)8 52、下面程序的运行结果是()。 main() {inti; for(i=1;i<=100;i++) if((i*i>=150)&&(i*i<=200)) break; printf("%d\n",i*i); } A)144B)255 C)169D)121 53、下面程序的运行结果是()。 main() {intm=7,n=5,i=1; do {if(i%m==0); if(i%n==0) {printf("%d\n",i);break;} i++; }while(i! =0); } A)7B)6 C)5D)4 54、下面程序段的输出结果是()。 x=3; do{y=x--; if(! y){printf("*");continue;} printf("#"); }while(x=2); A)##B)##* C)死循环D)输出错误信息 55、以下程序运行后的输出结果是()。 #include main() {inti,j; for(i=4;i>=1;i--) {printf("*"); for(j=1;j<=4-i;j++) printf("*"); printf("\n"); } } A)*B)****C)*D)**** *********** ******** ***** 56、有以下程序 #include main() {intc; while((c=getchar())! ='\n') {switch(c-'2') {case0: case1: putchar(c+4); case2: putchar(c+4);break; case3: putchar(c+3); default: putchar(c+2);break; }}printf("\n"); } 从第一列开始输入以下数据, 2473 A)668977B)668966 C)66778777D)6688766 57、当从键盘上输入字符“12134211”下面程序的 输出结果是()。 main() {chars; intv1=0,v2=0,v3=0,v4=0,k; for(k=0;k<=7;k++) {scanf("%c",&s); switch(s) {default: v4++; case'1': v1++; case'3': v3++; case'2': v2++;} } printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4); } A)v1=4,v2=2,v3=1,v4=1B)v1=4,v2=9,v3=3,v4=1 C)v1=5,v2=8,v3=6,v4=1D)v1=8,v2=8,v3=8,v4=8 58、有以下程序 main() {inti,j; for(j=10;j<11;j++) {for(i=9;i if(! (j%i))break; if(i>=j-1)printf("%d",j); } } 输出结果是()。 A)11B)10 C)9D)1011 59、运行以下程序后,如果从键盘上输入china#<回车>, 则输出结果为 #include main() {intv1=0,v2=0; charch; while((ch=getchar())! ='#') switch(ch) {case'a': case'h': default: v1++; case'o': v2++; } printf("%d,%d\n",v1,v2); } A)2,0B)5,0 C)5,5D)2,5 60、以下程序的输出结果是()。 main() {inti,j,x=0; for(i=0;i<2;i++)4 {x++; for(j=0;j<3;j++) {if(j%2)continue; x++; } x++; } printf("x=%d\n",x); } A)x=4B)x=8 C)x=6D)x=12 二、读程序输出结果: 1、程序运行时输入为: 2008<回车>时,则程序运行结果是: #include
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 循环 结构 选择题
![提示](https://static.bdocx.com/images/bang_tan.gif)