C语言循环结构选择题.doc_第1页
C语言循环结构选择题.doc_第2页
C语言循环结构选择题.doc_第3页
C语言循环结构选择题.doc_第4页
C语言循环结构选择题.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

C语言循环结构选择题1、在C语言中,下列说明正确的是A) 不能使用 do-while构成的循环B) do-while构成的循环必须用break才能退出C) do-while构成的循环,当while中的表达式值为非零时结束循环D) do-while构成的循环,当while中的表达式值为零时结束循环D2、以下叙述正确的是A) do-while语句构成的循环不能用其它语句构成的循环来代替B) do-while语句构成的循环只能用break语句退出C) 用do-while语句构成的循环,在while后的表达式为非零时结束循环D) 用do-while语句构成的循环,在while后的表达式为零时结束循环D3、若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是 for (i=5;i;i-) for (j=0;j4;j+).A) 20 B) 25C) 24 D) 30A4、设i,j,k均为int型变量,则执行完下面的for循环后,k的值为 for(i=0,j=10;i=j;i+,j-) k=i+j;A) 12 B) 10C) 11 D) 9B5、当执行以下程序段时 x=-1; do x=x*x; while( !x);A) 循环体将执行一次B) 循环体将执行两次C) 循环体将执行无限次D) 系统将提示有语法错误A6、执行语句:for(i=1;i+4;);后变量i的值是A)3 B)4C)5 D)不定C7、要使以下程序段输出10个整数,请填入一个整数。 for(i=0;i=_;printf(%dn,i+=2);A) 17 B) 18C) 20 D) 21B8、若输入字符串:abcde,则以下while循环体将执行多少次。 while(ch=getchar()=e) printf(*);A) 5 B) 4C) 6 D) 1B9、t为int型,进入下面的循环之前,t的值为0 while (t=1) 则以下叙述中正确的是A) 循环控制表达式的值为0 B) 循环控制表达式的值为1C) 循环控制表达式不合法 D) 以上说法都不对B10、有以下程序段 int k=0; while (k=1) k+; while循环执行的次数是A) 无限次 B) 有语法错,不能执行C) 一次也不执行 D) 执行一次A11、C语言用( )表示逻辑真值。A) true B) t 或 yC) 1 D) 0C12、语句while(!e);中的条件 !e 等价于( )。A) e=0 B) e!=1C) e!=0 D) eA13、以下for循环是( )。for(x=0,y=0;(y!=123) & (x4);x+)A) 无限循环 B) 循环次数不定C) 执行4次 D) 执行3次C14、对于for(表达式1;表达式3)可理解为( )。A) for(表达式1;0;表达式3)B) for(表达式1;1;表达式3)C) for(表达式1;表达式1;表达式3)D) for(表达式1;表达式3;表达式3)B15、C语言中while 和do-while 循环的主要区别是( )。A) do-while的循环体至少无条件执行一次B) while 的循环控制条件比do-while 的循环控制条件严格C) do-while 允许从外部转到循环体内D) do-while 的循环体不能是复合语句A16、下面关于for循环的正确描述是( )。A) for循环只能用于循环次数已经确定的情况B) for循环的循环体可以是一个复合语句C) 在for循环中,不能用break语句跳出循环体D) for循环的循环体不能是一个空语句B17、若i为整型变量,则以下循环语句的循环次数是( )。 for(i=2;i=0;) printf(%d,i-);A) 无限次 B) 0次C) 1次 D) 2次B18、以下叙述正确的是( )。A) continue语句的作用是结束整个循环的执行B) 只能在循环体内和switch语句体内使用break语句C) 在循环体内使用break语句或continue语句的作用相同D) 从多层循环嵌套中退出时,只能使用goto语句B19、对下面程序段,描述正确的是( )。 for(t=1;t=100;t+) scanf(%d,&x); if (x0) continue; printf(%dn,t); A) 当x=0时,什么也不输出C) printf函数永远也不执行D) 最多允许输出100个非负整数D20、对下面程序段叙述的正确的是( )。 int k=0; while (k=0) k=k-1;A) while循环执行10次 B) 无限循环C) 循环体一次也不被执行 D) 循环体被执行一次C21、若i,j已定义成int型,则以下程序段中内循环体的总执行次数是( )。 for(i=3;i;i-) for(j=0;j2;j+) for(k=0;k=0);A) 4 B) 5C) 3 D) 2C23、在下列选项中,没有构成死循环的程序段是A) int i=100; while (1) i=i%100+1; if (i100) break; B) for( ; ; );C) int k=1000; do +k; while (k=1000);D) int s=36; while (s) -s;D24、请读程序: #include main( ) int a,b; for(a=1,b=1;a=20) break; if (b%3=1) b+=3; continue; b-=5; printf(%dn,a); 上面程序的输出结果是A) 7 B) 8C) 9 D) 10B25、以下程序的输出结果是 main( ) int a,b; for(a=1,b=1;a=10) break; if (b%5=1) b+=5; continue; printf(%dn,a); A) 101 B) 6C) 4 D) 3D26、若x是int型变量,且有下面的程序片段: for(x=3;x6;x+) printf(x%2)?(*%d):(#%dn),x);上面程序片段的输出结果是A) *3 B) #3 #4 *4 *5 #5C) #3 D) *3#4 *4#5 *5D27、以下程序的输出结果是( )。 #include main() int i; for(i=1;i=5;i+) if(i%2) printf(*); else continue; printf(#); printf($n); A) *#$ B) #*#*#*$C) *#*#*#$ D) *#*$A28、下面程序的输出结果是( )。 main( ) int i; for(i=1;i=5;i+) if (i%2) printf(*); else continue; printf(#); printf($n); A) *#*#*#$ B) #*#*#*$C) #*#*$ D) *#*#$A29、以下程序段的输出结果是( )。 int k,j,s; for(k=2;k6;k+,k+) s=1; for(j=k;j7) n-; printf(%dn,n);A) 10 B) 9 C) 10 D) 9 9 8 9 8 8 7 8 7 7 6B31、下面程序的输出结果是( )。 main( ) int x=3; do printf(%d ,x-=2); while(!(-x); A) 1 B) 1 -2C) 3 0 D)是死循环B32、下面程序的输出结果是( )。 main( ) int y=9; for(;y0;y-) if(y%3=0) printf(%d,-y); continue; A) 741 B) 852C) 963 D) 875421B33、以下程序段的输出结果是( )。 int k,n,m; n=10;m=1;k=1; while (k=n) m*=2;k+=4; printf(%dn,m);A) 4 B) 16C) 8 D) 32C34、若有以下程序段,w和k都是整型变量: w=k; LB:if(w=0) goto LE; w-; printf(*); goto LB; LE:则不能与上面程序段等价的循环语句是A) for(w=k;w!=0;w-) B) w=k; while(w-!=0) printf(*); printf(*);w+;C) w=k; dow-; D) for(w=k;w;-w) printf(*);while(w!=0) printf(*);C35、设有如下程序段: int i=0, sum=1; do sum+=i+; while(i6); printf(%dn, sum);上述程序段的输出结果是( )。A) 11 B) 16C) 22 D) 15B36、执行下面程序后sum的值是( )。 main( ) int i,sum=0; for(i=1;i6;i+) sum+=i; printf(%dn,sum); A) 15 B) 14C) 不确定 D) 0A37、以下程序的输出结果是( )。 #include main( ) int count,i=0; for(count=1; countesp; n+) _; t=n*t/(2*n+1); s=2*s; printf(s=%fn,s); A) n=1 B) t=1 s+=t s=s/tC) t=1 D) n=1.0 s=s+t t+=sA40、运行下面的程序,如果从键盘上分别输入6和4,则输出结果是( )。 main( ) int i,x; for(i=0;i5) printf(%d,x); else printf(%dn,x-); A) 7和5 B) 6和3C) 7和4 D) 6和4A41、阅读以下程序: main( ) int x; for(x=5;x0;x-) if (x-amax) amax=x; if (_) amin=x; scanf(%f,&x); printf(namax=%fnamin=%fn,amax,amin); A) x0 xamin x0 D) x=0 xamin xaminD43、下面程序是计算n个数的平均值,请填空。 main( ) int i,n; float x,avg=0.0; scanf(%d,&n); for(i=0;in;i+) scanf(%f,&x); avg=avg+_; avg=_; printf(avg=%fn,avg); A) i B) x avg/i avg/nC) x D) i avg/x avg/nB44、下面程序的输出结果是( )。 main( ) int i,k=0, a=0, b=0; for(i=1;i=4;i+) k+; if (k%2=0) a=a+k; continue; b=b+k; a=a+k; printf(k=%d a=%d b=%dn,k,a,b); A) k=5 a=10 b=4 B) k=3 a=6 b=4C) k=4 a=10 b=3 D) k=4 a=10 b=4D45、以下程序段的执行结果是( )。 int i,j,m=0; for(i=1;i=15;i+=4) for(j=3;j=19;j+=4) m+; printf(%dn,m);A) 12 B) 15C) 20 D) 25C46、下面程序的输出结果是( )。 main( ) int x,i; for(i=1;i=50;i+) x=i; if (+x%2=0) if (x%3=0) if (x%7=0) printf(%d,i); A) 28 B) 27C) 42 D) 41D47、在执行以下程序时,如果从键盘上输入:ABCdef,则输出为 #include main( ) char ch; while (ch=getchar( )!=n) if (ch=A & ch=a & chz) ch=ch-32; printf(%c,ch); printf(n); A) ABCdef B) abcDEFC) abc D) DEFB48、执行以下程序后,输出的结果是( )。 main( ) int y=10; do y-; while (-y); printf(%dn,y-); A) -1 B) 1C) 8 D) 0D49、运行以下程序后,如果从键盘上输入:65 14,则输出结果为 main( ) int m,n; printf(Enter m,n:); scanf(%d%d,&m,&n); while (m!=n) while (mn) m-=n; while (nm) n-=m; printf(m=%dn,m); A) m=3 B) m=2C) m=1 D) m=0C50、下面程序的输出结果是( )。 main( ) int x=10,y=10,i; for(i=0;x8;y=+i) printf(%d %d ,x-,y); A) 10 1 9 2 B) 9 8 7 6C) 10 9 9 0 D) 10 10 9 1D51、下面程序的输出结果是( )。 main( ) int n=4; while (n-) printf(%d ,n-); A) 2 0 B) 3 1C) 3 2 1 D) 2 1 0A52、下面程序的输出结果是( )。 main( ) int i; for(i=1;i6;i+) if (i%2) printf(#);continue; printf(*); printf(n); A) #*#*# B) #C) * D) *#*#*A53、以下循环体的执行次数是 main( ) int i,j; for(i=0,j=1; i20) break; while(a=14); . . .A) a=12 y=12 B) a=12 y=12 C) a=12 y=12 D) a=12 y=12 a=14 y=16 a=16 y=28 a=14 y=26 a=16 y=20 a=14 y=44 a=18 y=24B55、有如下程序 main( ) int i,sum=0; for(i=1;i6) n-;printf(%d,n); 该程序段的输出结果是A) 987 B) 876C) 8765 D) 9876B58、函数pi的功能是根据以下近似公式求值: (*)/6=1+1/(2*2)+1/(3*3)+.+1/(n*n)请填空,完成求的功能。 #include main( ) double s=0.0; long int i,n; scanf(%ld,&n); for(i=1;i2); printf(%dn,j); A) 50 B) 52C) 51 D) 8D60、设有以下程序 main( ) int n1,n2; scanf(%d,&n2); while (n2!=0) n1=n2%10; n2=n2/10; printf(%d,n1); 程序运行后,如果从键盘上输入1298,则输出结果为( )。A) 892 B) 8921C) 89 D) 921B61、以下函数的功能是:求x的y次方,请填空。 main( ) int i,x,y; double z; scanf(%d %d,&x,&y); for(i=1,z=x;iy;i+) z=z*_ ; printf(xy=%en,z); A) i+ B) x+C) x D) iC62、下面程序的运行结果是( )。 main( ) int i; for(i=1;i=150) & (i*i=200) break; printf(%dn,i*i); A) 144 B) 255C) 169 D) 121C63、下面程序的运行结果是( )。 main( ) int a,b; a=-1; b=0; do +a; +a; b+=a; while(a9); printf(%dn,b); A) 34 B) 24C) 26 D) 25D64、执行下面程序段后,k的值是( )。 int i,j,k; for(i=0,j=10;i3;x-) if(x%3) x-; -x; -x; printf(%d,x); A) 6 3 B) 7 4C) 6 2 D) 7 3B67、下面程序段的运行结果是( )。 for(i=1;i=5;) printf(%d,i); i+;A) 12345 B) 1234C) 15 D) 无限循环D68、下面程序的运行结果是( )。 main( ) int s=0,i=1; while (s=10) s=s+i*i; i+; printf(%d,-i); A) 4 B) 3C) 5 D) 6B69、下面程序段的运行结果是( )。 int x=0,y=0; while (x15) y+,x+=+y; printf(%d,%d,y,x);A) 20,7 B) 6,12C) 20,8 D)8,20D70、下面程序段的运行结果是( )。 int n=0; while (n+=2) printf(%d,n);A) 012 B) 123C) 234 D) 错误信息B71、下面程序的运行结果是( )。 main( ) int a=1,b=10; do b-=a;a+; while(b-0); printf(%d,%dn,a,b); A) 3,11 B) 2,8C) 1,-1 D) 4,9B72、下面程序的运行结果是( )。 main( ) int x=3,y=6,a=0; while (x+!=(y-=1) a+=1; if (y+y;x=i+) i=x;B) for(; ;x+=i);C) while(1) x+;D) for(i=10; ;i-) sum+=i;A76、以下程序的输出结果是( )。 #include main( ) int num=0; while (num=2) num+; printf( %dn,num); A) 1 B) 1 C) 1 D) 1 2 2 2 3 3 4C77、以下程序段( )。 x=-1; do x=x*x; while (!x);A)是死循环 B)循环执行两次C)循环执行一次 D)有语法错误C78、以下程序运行后的输出结果是( )。 #include main( ) int s=0,k; for(k=7;k=0;k-) switch(k) case 1: case 4: case 7: s+; break; case 2: case 3: case 6: break; case 0: case 5: s+=2; break; printf(s=%dn,s); A)s=5 B)s=1C)s=3 D)s=7D79、以下程序运行后的输出结果是( )。 #include main( ) int i,j; for(i=4;i=1;i-) printf(*); for(j=1;j=4-i;j+) printf(*); printf(n); A)* B)* C)* D)* * * * * * * * * *A80、有以下程序 #include 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); 从第一列开始输入以下数据,代表一个回车符。 2473 程序的输出结果是( )。A) 668977 B) 668966C) 66778777 D) 6688766A81、请读程序: #include #include main( ) float x,y,z; scanf(%f%f,&x,&y); z=x/y; while(1) if (fabs(z) 1.0) x=y; y=z; z=x/y; else break; printf(%fn,y); 若运行时从键盘上输入 3.6 2.4(表示回车),则输出结果是( )。A) 1.500000 B) 1.6000000C) 2.000000 D) 2.400000B82、下面程序的输出结果是( )。 main( ) int x=3,y=6,a=0; while(x+!=(y-=1) a+=1; if(yx) break; printf(x=%d,y=%d,a=%dn,x,y,a); A) x=4,y=4,a=1 B) x=5,y=5,a=1C) x=5,y=4,a=3 D) x=5,y=4,a=1D83、当从键盘上输入字符“12134211”下面程序的输出结果是( )。 main( ) char s; int v1=0,v2=0,v3=0,v4=0,k; for(k=0;kamax) amax=x; if (xamin) amin=x; _; printf(namax=%fnamin=%fn,amax,amin); A) x0 scanf(%d,&x) getchar(x)C) x=0 D) x0 scanf(%d,&x) scanf(%dn,&x)D85、设j为int型变量,则下面for循环语句的执行结果是( )。 for( j=10;j3;j-) if (j%3) j-; -j; -j; printf(%d ,j); A) 6 3 B) 7 4C) 6 2 D) 7 3B86、有以下程序 main( ) int i, j; for(j=10;j11;j+) for(i=9;i=j-1) printf(%d,j); 输出结果是( )。A) 11 B) 10C) 9 D) 10 11B87、运行以下程序后,如果从键盘上输入china#,则输出结果为 #include main( ) int v1=0,v2=0; char ch; while (ch=getchar( )!=#) switch(ch) case a: case h: default: v1+; case o: v2+; printf(%d,%dn,v1,v2); A) 2,0 B) 5,0C) 5,5 D) 2,5C88、以下程序的输出结果是( )。 main( ) int i,j,x=0;

温馨提示

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

评论

0/150

提交评论