第六章循环控制(6033)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

请你负责具体第五章、第六章的题目,主要有以下几个方面:2、将相应章节的题库内容进行审核,主要包括题目本身及答案是否正确,题目的难易度是否合适(太难或太偏可删除),题目是否有重复,格式是否符合导入数据库规范;3、审核后的相应章节题目若每章不够60题,请进行补充。4、第二阶段工作请于3月底完成,如有不清楚,可与我电话联系。1.阅读下列程序:main(){intn[3],i,j,k;for(i=0;i〈3;i++〉n[i]=0;k=2;for(i=0;i〈k;i++〉for(j=0;j〈k;j++〉n[j]=n[i]+1;printf(%d\n,n[1]);}程序运行后输出结果是(D)。A.2B.1C.0D.32.以下正确的描述是(B)。A.continue语句的作用是结束整个循环的执行B.只能在循环体内和switch语句体内使用break语句C.在循环体内使用break语句或continue语句的作用相同D.从多层循环嵌套中退出时,只能使用goto语句3.若intx;且有下面的程序片断,则输出结果是(A)。for(x=3;x6;x++){printf((x%2)?##%d:**%d\n,x);}A.##3**4##5B.**3##4**5C.**3##4**5D.##3**4##54.下列保留字中用于构成循环结构的是(B)。A.ifB.whileC.switchD.default5.以下程序段的输出结果为(B)。for(i=4;i1;i--)for(j=1;ji;j++)putchar('#');A.无B.######C.#D.###6.下列说法正确的是(D)。A.break语句仅能使用在switch结构中B.执行continue语句可以结束包含它的整个循环结构C.执行循环体中的break语句可以结束语本次循环D.执行break语句可以结束包含它的循环结构7.下列关于do...while(表达式)循环结构的叙述中,说法正确的是(B)。A.只要表达式的值不为0就开始执行循环B.循环体至少被执行一次C.当表达式的值为0时循环体一次也不执行D.循环体仅能执行一次8.下面有关for循环的正确描述是(D)。A.for循环只能用于循环次数已经确定的情况B.for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环体D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来9.以下程序的输出结果是(B)。main(){inti,j,x=0;for(i=0;i2;i++){x++;for(j=0;j3;j++){if(j%2)continue;x++;}x++;}printf(x=%d\n,x);}A.x=4B.x=8C.x=6D.x=1210.设有以下程序段intx=0,s=0;while(!x!=0)s+=++x;printf(%d,s);则(B)。A.运行程序段后输出0B.运行程序段后输出1C.程序段中的控制表达式是非法的D.程序段执行无限次11.要求通过while循环不断读入字符,当读入字母N时结束循环。若变量已正确定义,以下正确的程序段是(A)。A.while((ch=getchar())!=′N′)printf(%c,ch);B.while(ch=getchar()!=′N′)printf(%c,ch);C.while(ch=getchar()==′N′)printf(%c,ch);D.while((ch=getchar())==′N′)printf(%c,ch);12.有以下程序main(){inty=10;while(y--);printf(y=%d\n,y);}程序执行后的输出结果是(B)。A.y=0B.y=-1C.y=1D.while构成无限循环13.下列程序段输出结果是(B)。a=1;b=10;do{b-=a;a++;}while(b--0);printf(a,b=%d,%d,a,b);A.a,b=7,5B.a,b=2,8C.a,b=2,2D.a,b=8,214.有以下程序main(){inti,j;for(j=10;j11;j++){for(i=9;i==j-1;i++)printf(%d,j);}}输出结果是(B)。A.11B.10C.9D.101115.对以下for循环,叙述正确的是(C)。for(x=0,y=0;(y!=123)&&(x4);x++,y++);A.是无限循环B.循环次数不定C.执行了4次D.执行了3次16.若有程序段:x=99;while(x-2)x--;则循环结束时,x=(B)。A.99B.2C.1D.017.下列程序段的执行结果是输出(B)。x=3;do{printf(″%2d″,x--);}while(!x);A.321B.3C.21D.21018.执行下列程序后,i的值是(C)。inti,x;for(i=1,x=1;i20;i++){if(x=10)break;if(x%2==1){x+=5;continue;}x-=3;}A.4B.5C.6D.719.以下程序段输出结果是(D)。main(){intk,j,s;for(k=2;k6;k++,k++){s=1;for(j=k;j6;j++)s+=j;}printf(“%d\n”,s);}A.9B.1C.11D.1020.以下叙述正确的是(D)。A.do—while语句构成的循环不能用其它语句构成的循环来代替B.do—while语句构成的循环只能用break语句退出C.用do—while语句构成循环时,只有在while后的表达式非零时结束循环D.用do—while语句构成循环时,只有在while后的表达式为零时结束循环21.以下程序的输出结果是(D)。main(){inta,b;for(a=1,b=1;a=100;a++){if(b=10)break;if(b%3==1){b+=3;continue;}}printf(%d\n,a);}A.101B.6C.5D.422.设有程序段intk=10while(k=0)k=k-1则下面描叙正确的是(C)。A.while(k=0)k=k-1;B.循环是无限循环C.循环体语句一次也不执行D.循环体语句执行一次23.下面程序段的运行结果是(C)。intn=0;while(n++=2);printf(“%d”,n);A.2B.3C.4D.有语法错24.C语言中while和do-while循环的主要区别是(A)。A.do-while的循环体至少无条件执行一次B.while的循环控制条件比do-while的循环控制条件严格C.do-while允许从外部转到循环体内D.do-while允许从外部转到循环体内25.以下能正确计算1*2*3*…*10的程序段是(C)。A.do{i=1;s=1;s=s*i;i++;}while(I=10);B.do{i=1;s=0;s=s*i;i++;}while(I=10);C.i=1;s=1;do{s=s*i;i++;}while(I=10);D.i=1;s=0;do{s=s*i;i++;}while(I=10);26.已知intt=0;while(t=1){...}则以下叙述正确的是(B)A.循环控制表达式的值为0B.循环控制表达式的值为1C.循环控制表达式不合法D.以上说法都不对27.有如下程序:main(){intn=9;while(n6){n--;printf(%d,n);}}该程序的输出结果是(B)A.987B.876C.8765D.987628.在下列选项中,没有构成死循环的是(D)A.inti=100;while(1){i=i%100+1;if(i100)break;}B.for(;;);C.intk=10000;do{k++;}while(k10000);D.ints=36;while(s)--s;29.以下程序段的描述,正确的是(C)x=-1;do{x=x*x;}while(!x);A.是死循环B.循环执行两次C.循环执行一次D.有语法错误在下述程序中,判断ij共执行的次数是(D)main(){inti=0,j=10,k=2,s=0;for(;;){i+=k;if(ij){printf(%d,s);break;}s+=i;}}A.4B.7C.5D.630.下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,请选择填空。(B)#includestdio.hmain(){inti=0,j,k;do{i++;k=316-13*i;}while(______);j=k/11;printf(316=13*%d+11*%d,i,j);}A.k/11B.k%11C.k/11==0D.k%11==031.下面程序的运行结果是(D)#includestdio.hmain(){inty=10;do{y--;}while(--y);printf(%d\n,y--);}A.-1B.1C.8D.032.有如下程序main(){intx=23;do{printf(%d,x--);}while(!x);}该程序的执行结果是(B)A.321B.23C.不输出任何内容D.陷入死循环33.执行语句for(i=1;i++4;);后变量i的值是(C)A.3B.4C.5D.不定34.对表达式for(表达式1;;表达式3)可理解为(B)A.for(表达式1;0;表达式3)B.for(表达式1;1;表达式3)C.for(表达式1;表达式1;表达式3)D.for(表达式1;表达式3;表达式3)35.以下程序的输出结果是(A)main(){inta,i;a=0;for(i=1;i5;i++){switch(i){case0:case3:a+=2;case1:case2:a+=3;default:a+=5;}}printf(%d\n,a);A.31B.13C.10D.2036.若有如下语句intx=3;do{printf(%d\n,x-=2);}while(!(--x));则上面程序段(B)A.输出的是1B.输出的是1和-2C.输出的是3和0D.是死循环37.下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对相等数时结束循环,请选择填空。(B)#includestdio.hmain(){inta,b,t;scanf(%d%d,&a,&b);while(_______){if(ab){t=a;a=b;b=t;}printf(%d,%d\n,a,b);scanf(%d%d,&a,&b);}}A.!a=bB.a!=bC.a==bD.a=b38.对下Ⅰ,Ⅱ两个语句描述正确的是(A)Ⅰ.while(1)Ⅱ.for(;;)A.都是无限循环B.Ⅰ是无限循环Ⅱ错误C.Ⅰ循环一次,Ⅱ错误D.以上答案都错39.以下描述中正确的是(C)A.由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句B.do-while循环由do开始,用while结束,在while(表达式)后面不能写分号C.在do-while循环体中,是先执行一次循环,再进行判断D.do-while循环中,根据情况可以省略while40.下列说法正确的是(A)inti,x;for(i=0,x=0;i=9&&x!=876;i++)scanf(%d,x);A.最多的执行10次B.最多执行9次C.是无限循环D.循环体一次也不执行41.现有定义intk=1;则执行语句while(++k4);后,k的值为(A)A.4B.5C.6D.842.以下程序的运行结果为(C)#includestdio.hmain(){intm,n;for(m=0,n=10;mn;m+=3,n--);printf(%d,%d\n,m,n);}A.6,7B.7,6C.9,7D.7,943.阅读下列程序,程序的输出结果是(B)#includestdio.hmain(){intm,n;floatk;for(m=6;m2

1 / 16
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功