C语言循环控制练习题

合集下载

C语言循环习题

C语言循环习题

循环习题集锦一.选择题1.for(i=0;i<10;i++);结束后,i的值是;A 9B 10C 11D 122.下面程序的循环次数是:#include<>void main(){int k=0;while(k<10){if(k<1) continue;if(k==5) break;k++;}printf(“k=%d\n”,k);}A. 5 B 6 C 4 D 死循环,不能确定循环次数3.下面程序的输出结果是()#include<>void main(){int s,k;for(s=1,k=2;k<5;k++)s=s+k;printf(“%d\n”,s);}A 1B 9C 10D 154.要使下面程序输出10个整数,则在下画线处填入正确的数是:#include<>void main(){int i;for(i=0;i<= ;)printf(“i=%d\n”,i=i+2);} (显示的是:2,4,6,8,10,12, (20)A 9B 10C 18D 205.运行下面程序:#include<>void main(){int i=10,j=0;do{j=j+i; /*第一:10,第二:19第三:27第四:34第五:40*/i--;}while(i>5);printf(“%d\n”,j);}输出结果是:A 45B 40C 34D 556.运行下面程序#include <>main(){int k=0,a=1;while(k<10){for( ; ;){ if((k%10)==0)/*当循环开始的时候时,k=0,此时和10取3余的结果就等于0,就跳出了for循环开始下面的循环*/ break;elsek--;}k=k+11;a=a+k;printf(“k=%d \n a=%d\n”,k,a);}则输出的结果是()A 21 32B 21 33C 11 12D 10 117.以下叙述正确的是:A. do---while语句构成的循环不能用其他语句构成的循环来代替。

C语言程序设计习题集第4章 循环结构(答案)

C语言程序设计习题集第4章 循环结构(答案)

第4章循环结构一、选择题1、有以下程序段int k=0;while(k=1)k++;while 循环执行的次数是( A)A) 无限次B) 有语法错,不能执行C) 一次也不执行D) 执行1次2、t为int类型,进入下面的循环之前,t的值为0while( t=1){ …… }则以下叙述中正确的是( B)A) 循环控制表达式的值为0B) 循环控制表达式的值为1C) 循环控制表达式不合法D) 以上说法都不对3、在C程序中,与while(m)中表达式m完全等价的是(B )A) m==0 B) m!=0 C) m==1 D) m!=14、有以下程序,程序运行后的输出结果是(C )。

main(){int i=1,sum=0;while(i<=4){sum=sum+i;i=i+1;}printf(“%d\n”,sum);}A)4 B)5 C)10 D)死循环5、有以下程序,程序运行后的输出结果是(D )。

main(){ int i=1,sum=0;while(i<=4)sum=sum+i;i=i+1;printf(“%d\n”,sum);}A)4 B)5 C)10 D)死循环6、有如下程序main(){int n=9;while(n>6){n--;printf(“%d”,n);}}该程序段的输出结果是(B)A) 987 B) 876 C) 8765 D) 98767、以下程序的输出结果是( B )main(){ int num= 0;while(num<=2){ num++; printf(“%d\n”,num);}}A) 1 B) 1 C)1 D) l2 2 23 348、有以下程序,若运行时输入3.6 2.4<回车>,则输出的结果是( B)。

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;}elsebreak;}printf(“%f\n”,y);}A)1.500000 B)1.600000 C)2.000000 D)2.4000009、执行以下程序段时x=-1;do{ x=x*x; }while(! x);则下面描述正确的是(A )A) 循环体将执行一次B) 循环体将执行两次C) 循环体将执行无限次D) 系统将提示有语法错误10、有以下程序段其输出结果是(C )int x=3;do{ printf("%d",x-=2); }while (!(--x));A) 1 B) 3 0 C) 1 -2D) 死循环11、有如下程序main(){int x=23;do{printf(“%d”,x);x--;}while(!x);}该程序的执行结果是(B )A) 321 B) 23 C) 不输出任何内容D) 陷入死循环12、有以下程序段int n=0,p;do{scanf(“%d”,&p);n++;}while(p!=12345 &&n<3);此处do—while循环的结束条件是( D)A) P的值不等于12345并且n的值小于3B) P的值等于12345并且n的值大于等于3C) P的值不等于12345或者n的值小于3D) P的值等于12345或者n的值大于等于313、以下不构成无限循环的语句或语句组是(A)A) n=0;do {++n;}while(n<0);B) n=0;while(1){n++;}C) n=10;while(n);{n--;}D) for(n=0,i=1; ;i++)n+=i;14、若i为整型变量,则以下循环执行的次数是(B)for(i=2;i= =0;) printf(“%d”,i--);A)无限次B)0次C)1次D)2次15、执行语句for(i=1;i++<4;)后,变量i的值是(C)A) 3 B) 4 C) 5 D) 不定16、有以下程序main(){int y=9 ;for( ; y>0 ; y--)if(y%3==0 ) printf("%d" , --y) ;}程序的运行结果是(C)A) 741 B)963 C)852 D)87542117、以下程序执行后sum的值是( C)A)15 B)14 C) 不确定D)0main(){ int i , sum;for(i=1;i<6;i++) sum+=i;printf(“%d\n”,sum);}18、有如下程序{ int i,sum=0;for(i=1;i<=3;sum++) sum+=i;printf(“%d\n”,sum);}该程序的执行结果是(C)A) 6 B) 3 C) 死循环D) 019、执行语句for(i=3;i>0;i--);i--;后,变量i的值是(C )A)0 B)10 C)-1 D)120、执行下面程序片段的结果是(A )。

第六章循环控制上机习题

第六章循环控制上机习题

第六章循环控制问题与思考1.对下面程序段描述正确的是__________。

int k=10;while(k=0) k=k-1;A) while循环执行10次 B) 循环是无限循环C) 循环体语句一次也不执行D) 循环体语句执行一次2.语句while(!E);中的表达式!E等价于________.A) E==0B) E!=1 C) E!=0 D) E==13.下面程序段的运行结果是__________.int n=0;while(n++<=2); printf("%d",n);A) 2 B) 3 C) 4 D) 有语法错4.下面程序的运行结果是___________.#include<stdio.h>main(){int num=0;while(num<=2){num++;printf("%d\n",num);}}A)1 B)1 C) 1 D) 12 2 23 345.以下程序段________.x=-1;do{ x=x*x;}while(!x);A) 是死循环 B) 循环执行二次 C) 循环执行一次 D) 有语法错误6.如下程序段 _________.int x=3;do{printf("%d\n",x-=2);}while(!(--x));A) 输出的是1 B) 输出的是1和-2C) 输出的是3和0 D) 是死循环7.下面程序的运行结果是______.#include<stdio.h>main(){int y=10;do{y--;}while(--y);printf("%d\n",y--);}A) -1 B) 1 C) 8 D) 08.若i为整型变量,则以下循环执行次数是_____.for(i=2;i==0;)printf("%d",i--);A) 无限次 B) 0次 C) 1次 D) 2次9.执行语句for(i=1;i++<4; );后变量i的值是______.如果改成for(i=1;++i<4; );后变量i的值是 4A) 3 B) 4 C) 5 D) 不定10.以下正确的描述是_______.A) continue语句的作用是结束整个循环的执行B) 只能在循环体内和switch语句体内使用break语句C) 在循环体内使用break语句或continue语句的作用相同D) 从多层循环嵌套中退出时,只能使用goto语句11.运行下面程序时,从键盘输入20357<CR>,则下面程序的运行结果是__66277879______。

C语言选择与循环控制结构常见习题与答案

C语言选择与循环控制结构常见习题与答案

1.猜数字小游戏:每次程序随机生成一个数字,用户输入数字进行猜测,十回合内猜出数据则胜利,否则失败,可重复游戏。

代码如下:#include <stdio.h>#include <stdlib.h>#include <math.h>int main(){int magic;int guess;int count;int ret;char reply;srand(time(NULL));do{magic = rand()%100+1; //产生1到100之间的随机数//count = 0;do{do{printf("Please guess a magic number:");ret = scanf("%d",&guess);if(ret!=1){while(getchar()!='\n');}}while(ret!=1||guess<1||guess>100); //如果输入不是1到100之间的数字则连续读取//count = count+1;if(guess>magic)printf("Wrong!Too big!\n");else if (guess<magic)printf("Wrong!Too small!\n");else{printf("Right!\n");printf("The number is :%d\n",magic);}}while(guess!=magic&&count<10);if (magic==guess)printf("count = %d\n",count);if (magic!=guess)printf("You lose!");printf("Do you want to continue(Y/N or y/n)?\n");scanf(" %c",&reply);}while((reply=='y')||(reply=='Y'));return 0;}2.任意时间时钟时针与分针的夹角:钟面上的时针和分针之间的夹角总是在 0 度~ 359 度之间。

计算机2级C语言题库第六章 循环控制

计算机2级C语言题库第六章 循环控制

第六章循环控制一单项选择题1.下面程序段的运行结果是()。

int n=0;while(n++<=2);printf(“%d”,n);A) 2 B) 3 C) 4 D) 有语法错2.设有程序段:t=0;while(printf(“*”)){t++;if(t<3) break;}下面描述正确的是()。

A) 其中循环控制表达式与0等价B) 其中循环控制表达式与'0'等价C) 其中循环控制表达式是不合法的D) 以上说法都不对3.下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对相等数时结束循环,请选择填空()。

#include <stdio.h>main(){int a,b,t;scanf(“%d%d”,&a,&b);while( ___________ ){if(a>b){t=a;a=b;b=t;}printf(“%d,%d\n”,a,b);scanf("%d%d",&a,&b);}}A) !a=b B) a!=b C) a==b D) a=b5.对以下程序段描述正确的是()。

x=-1;do{x=x*x;}while(!x);A) 是死循环B) 循环执行二次C) 循环执行一次D) 有语法错误10.若i为整型变量,则以下循环执行次数是()。

for(i=2;i==0;) printf(“%d”,i--);A) 无限次B) 0次C) 1次D) 2次11.以下不是无限循环的语句为()。

A) for(y=0,x=1;x>++y;x=i++) i=x;B) for(;;x++=i);C) while(1){x++;}D) for(i=10;;i--) sum+=i;13.执行语句for(i=1;i++<4;) ;后变量i的值是()。

A) 3 B) 4 C) 5 D) 不定14.有一堆零件(100到200之间),如果分成4个零件一组的若干组,则多2个零件;若分成7个零件一组,则多3个零件;若分成9个零件一组,则多5个零件。

c语言第5章练习题--循环结构程序设计

c语言第5章练习题--循环结构程序设计

难度(*)--考点:基本概念、判断循环次数1、C语言中下列叙述正确的是(D)A)不能使用do…while语句构成的循环B)do…while语句构成的循环,必须用break语句才能退出C)do…while语句构成的循环,当while语句中的表达式值为非零时结束循环D)do…while语句构成的循环,当while语句中的表达式值为零时结束循环2、对于下列程序片断,(A)int k=0;while(k=1) k++;则while循环的执行次数是A. 无限次B. 有语法错误,不能执行C. 一次也不执行D. 执行一次3、下面程序段(C)int k=2;while (k=0) {printf(“%d”,k);k--;}则下面描述中正确的是。

A )while 循环执行10 次B )循环是无限循环C )循环题语句一次也不执行D )循环体语句执行一次4、当执行以下程序段时(A)x=-1;do { x=x*x;} while(!x);A)循环体将执行一次B)循环体将执行两次C)循环体将执行无限次D)系统将提示有语法错误5、若i为整型变量,则以下循环执行次数是(B):for( i = 2; i ==0;) printf(“%d”, i);A) 无限次B) 0次c) 1次D) 2次6、对for(表达式1; ; 表达式3)可理解为(B)A) for(表达式1; 0 ; 表达式3)B) for(表达式1; 1 ; 表达式3)C) for(表达式1;表达式1; 表达式3)D) for(表达式1;表达式3; 表达式3)7、下面程序的功能是从键盘输入一组字符,从中统计大写字母和小写字母的个数,选择填空。

(A)main ( ){ int m=0,n=0;char c;while (( ) ! '\n'){if (c>='A' && c<='Z') m++;if (c>='a' && c<='z') n++;}}A)c=getchar( ) B)getchar( ) C)c==getchar( ) D)scanf(“%c”,&c)8、下面for 循环语句。

C语言循环习题答案

C语言循环习题答案

循环习题集锦一. 选择题1. for(i=0;i<10;i++);结束后,i 的值是;(10)A 9B 10C 11D 122.下面程序的循环次数是:(D)int k=0;while(k<10){if(k<1) continue;if(k==5) break;k++;)A. 5 B 6 C 4 D死循环,不能确定循环次数3.下面程序的输出结果是(10)main(){int s,k;for(s=1,k=2;k<5;k++)s+=k;printf("%d\n”,s))A 1B 9C 10D 154.要使下面程序输出10个整数则在下画线处填入正确的数是(c)for(i=0;i<=;)printf("%d\n”,i+=2);A 9B 10C 18D 205.运行下面程序:(B)main(){ int i=10,j=0;do{ j=j+i;i--;}while(i>5);printf("%d\n”,j);}输出结果是:A 45B 40C 34D 556.运行下面程序#include “stdio.h”main(){ int k=0,a=1;while(k<10){for( ; ;){ if((k%10)==0)break;elsek--;)k+=11;a+=k;)printf("%d %d\n”,k,a);)则输出的结果是(C)A 21 32B 21 33C 11 12D 10 117.以下叙述正确的是:(D)A.do---while语句构成的循环不能用其他语句构成的循环来代替。

B.do---while语句构成的循环只能用break语句退出。

C.用do---while语句构成的循环,在while后的表达式为非零时结束循环。

D.用do---while语句构成的循环,在while后的表达式为零时结束循环。

8.有如下程序:main(){ int x=3;do{printf("%d”,x--);}while(!x);)该程序的执行结果是:(C)A 3 2 1B 2 1 0C 3D 29.若k为整型变量,则下面while循环执行的次数为:(A)k=10;while(k==0) k=k-1;A 0B 1C 10 D无限次10.下面有关for循环的正确描述是(D)A.for循环只能用于循环次数已经确定的情况B.for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环体。

C语言循环结构练习题带答案

C语言循环结构练习题带答案

第5章循环结构程序设计练习题1. 单项选择题(1)语句while (!e);中的条件!e等价于 A 。

A. e==0B. e!=1C. e!=0D. ~e(2)下面有关for循环的正确描述是 D 。

A. for循环只能用于循环次数已经确定的情况B. for循环是先执行循环体语句,后判定表达式C. 在for循环中,不能用break语句跳出循环体D. for循环体语句中,可以包含多条语句,但要用花括号括起来(3)C语言中 D 。

A. 不能使用do-while语句构成的循环B. do-while语句构成的循环必须用break语句才能退出C. do-while语句构成的循环,当while语句中的表达式值为非零时结束循环D. do-while语句构成的循环,当while语句中的表达式值为零时结束循环(4)C语言中while和do-while循环的主要区别是 A 。

A. do-while的循环体至少无条件执行一次B. while的循环控制条件比do-while的循环控制条件严格C. do-while允许从外部转到循环体内D. do-while的循环体不能是复合语句(5)以下程序段 C 。

int x=-1;do{x=x*x;}while (!x);A. 是死循环B. 循环执行二次C. 循环执行一次D. 有语法错误(6)下列语句段中不是死循环的是__C__。

A. i=100;while (1){i=i%100+1;if (i==20) break;}B. for (i=1;;i++)sum=sum+1;C. k=0;do{++k;} while (k<=0);D. s=3379;while (s++%2+3%2)s++;(7)与以下程序段等价的是__A__。

while (a){if (b) continue;c;}A. while (a)B. while (c){ if (!b) c; } { if (!b) break; c; }C. while (c)D. while (a){ if (b) c; } { if (b) break; c; }(8)以下程序的输出结果是_B___。

c循环 练习题

c循环 练习题

c循环练习题本篇文章将为读者提供一些关于C语言中循环的练习题。

通过这些练习题,读者将有机会巩固对C语言循环的理解,并提高自己的编程能力。

以下是一些具体的练习题,逐步加大难度,读者可以根据自己的能力选择适合的练习题进行挑战。

1. 编写一个程序,在控制台输出从1到10的整数。

```c#include <stdio.h>int main() {int i;for(i=1; i<=10; i++) {printf("%d ", i);}return 0;}```2. 编写一个程序,计算1到100之间所有偶数的和。

```c#include <stdio.h>int main() {int i;int sum = 0;for(i=2; i<=100; i+=2) {sum += i;}printf("The sum of all even numbers between 1 and 100 is %d\n", sum);return 0;}```3. 编写一个程序,判断一个输入的整数是否为素数(只能被1和自身整除)。

```c#include <stdio.h>int main() {int num, i, isPrime = 1;printf("Enter a positive integer: ");scanf("%d", &num);for(i=2; i<=num/2; i++) {if(num % i == 0) {isPrime = 0;break;}}if(isPrime == 1) {printf("%d is a prime number.\n", num);} else {printf("%d is not a prime number.\n", num);}return 0;}```4. 编写一个程序,输出斐波那契数列前20个数。

C语言循环控制练习题

C语言循环控制练习题

循环控制练习题1。

设有程序段 int k=10; while (k=0) k=k—1; 则下面描述中正确的是()A while循环执行10次B 循环是无限循环C 循环体语句一次也不执行D 循环体语句执行一次2.设有以下程序段 int x=0,s=0; while(!x!=0)s+=++x;printf("%d",s) ;则( )A 运行程序段后输出0B 运行程序段后输出1C 程序段中的控制表达式是非法的D 程序段执行无限次3、语句while(!E);中的表达式!E特等价于()A、E==0B、E!=1C、E!=0D、E==14、下面程序段的执行结果是( )a=1;b=2;c=2;while(a<b<c ){t=a;a=b;b=t;c-—;}printf("%d,%d,%d",a,b,c);A、1,2,0B、2,1,0 C 、1,2,1 D、2,1,15、下面程序段的运行结果是( )x=y=0;while(x<15) y++,x+=++y;printf("%d,%d”,y,x);A、20,7B、6,12C、20,8 D 8,206、下面程序段的运行结果是()int n=0;while (n++〈=2);printf(”%d",n);A,2 B、3 C、4 D 有语法错误7、设有程序段t=0;while(printf("*”)){t++; if(t〈3) break;}下面描述正确的是()A、其中循环控制表达式与0等价B、其中循环控制表达式与’0‘等价C 、其中循环表达式是不合法的D、以上说法都不对8、下面程序的功能是将从键盘输入的一对数,由小到大排序输出。

当输入一对相等的数时结束循环,请选择填空。

main(){int a,b,t;scanf(“%d,%d”,&a,&b);while(){if(a>b){t=a;a=b;b=t;}printf(“%d,%d\n",a,b);scanf(“%d,%d”,&a,&b);}}A、!a=b B、a!=b C、a==b D、a=b9、下面程序的功能是从键盘输入的一组字符中统计出大写字母个数m和小写字母个数n,并输出m,n中较大者,请选择填空。

C语言循环控制练习题

C语言循环控制练习题

C语言循环控制练习题1. 编写一个程序,输出1到100之间所有能被3整除但不能被5整除的数。

答案:c#includeint main{int i;for (i = 1; i <= 100; i++) {if (i % 3 == 0 && i % 5 != 0) {printf("%d ", i);}}return 0;}2. 编写一个程序,计算1到100之间所有奇数的和。

答案:c#includeint main{int i, sum = 0;for (i = 1; i <= 100; i += 2) {sum += i;}printf("奇数的和为:%d\n", sum);return 0;}3. 编写一个程序,输出九九乘法表。

答案:c#includeint main{int i, j;for (i = 1; i <= 9; i++) {for (j = 1; j <= i; j++) {printf("%d * %d = %d\t", j, i, j * i); }printf("\n");}return 0;}4. 编写一个程序,判断一个数是否为素数。

答案:c#includeint main{int num, i, isPrime = 1;printf("请输入一个正整数:");scanf("%d", &num);for (i = 2; i <= num / 2; i++) {if (num % i == 0) {isPrime = 0;break;}}if (isPrime) {printf("%d是素数\n", num);} else {printf("%d不是素数\n", num);}return 0;}5. 编写一个程序,计算一个数的阶乘。

c语言-第五章-循环控制-习题

c语言-第五章-循环控制-习题

第五章循环控制一.选择题1.下面程序段int k=2;while (k=0) {printf(“%d”,k);k--;}则下面描述中正确的是。

A)while循环执行10次B)循环是无限循环C)循环题语句一次也不执行D)循环体语句执行一次2.下述程序段中,与其他程序段的作用不同。

A)k=1; B)k=1;while (1) { Repeat :s+=k ; s+=k ;k=k+1 ; if (++k<=100)if (k>100) break ; goto Repeat} printf(“\n%d”,s) ;printf(“\n%d”,s) ;C)int k,s=0; D)k=1;for (k=1;k<=100;s+=++k); doprintf(“\n%d”,s) ; s+=k;while (++k<=100) ; printf(“\n%d”,s) ;3.以下程序段的循环次数是。

for (i=2; i==0; ) printf(“%d” , i--) ;A)无限次B)0次C)1次D)2次4.下面程序的输出结果是。

main ( ){ char c=‟A‟;int k=0;do {switch (c++) {case …A‟ : k++ ; break ;case …B‟ : k-- ;case …C‟ : k+=2 ; break ;case …D‟ : k%=2 ; continue ;case …E‟ : k*=10 ; break ;default : k/=3 ;}k++;} while (c<‟G‟) ;printf (“k=%d”,k) ;}A)k=3 B)k=4 C)k=2 D)k=05.下面程序的输出结果是。

main ( ){ int x=9;for (; x>0; x--) {if (x%3==0) {printf(“%d”,--x);continue ;}}}A)741 B)852 C)963 D)8754216.以下不是死循环的程序段是。

(完整版)C语言循环习题答案

(完整版)C语言循环习题答案

循环习题集锦一.选择题1.for(i=0;i<10;i++);结束后,i 的值是;(10)A 9B 10C 11D 122.下面程序的循环次数是:(D)int k=0;while(k<10){if(k<1) continue;if(k==5) break;k++;}A. 5 B 6 C 4 D 死循环,不能确定循环次数3.下面程序的输出结果是(10)main(){int s,k;for(s=1,k=2;k<5;k++)s+=k;printf(“%d\n”,s);}A 1B 9C 10D 154.要使下面程序输出10 个整数,则在下画线处填入正确的数是:(c)for(i=0;i<= ;)printf(“%d\n”,i+=2);A 9B 10C 18D 205.运行下面程序:(B)main(){ int i=10,j=0;do{ j=j+i;i--;}while(i>5);printf(“%d\n”,j);}输出结果是:A 45B 40C 34D 556.运行下面程序#include “stdio.h”main(){ int k=0,a=1;while(k<10){for( ; ;){ if((k%10)==0)break;elsek--;}k+=11;a+=k;}printf(“%d %d\n”,k,a);}则输出的结果是(C)A 21 32B 21 33C 11 12D 10 117.以下叙述正确的是:(D)A.do---while 语句构成的循环不能用其他语句构成的循环来代替。

B.do---while 语句构成的循环只能用break 语句退出。

C.用do---while 语句构成的循环,在while 后的表达式为非零时结束循环。

D.用do---while 语句构成的循环,在while 后的表达式为零时结束循环。

8.有如下程序:main(){ int x=3;do{printf(“%d”,x--);}while(!x);}该程序的执行结果是:(C)A 3 2 1B 2 1 0C 3D 29.若k 为整型变量,则下面while 循环执行的次数为:(A)k=10;while(k==0) k=k-1;A 0B 1C 10D 无限次10.下面有关for 循环的正确描述是(D)A.for 循环只能用于循环次数已经确定的情况B.for 循环是先执行循环体语句,后判断表达式C.在for 循环中,不能用break 语句跳出循环体。

C语言题库-循环结构

C语言题库-循环结构

一、选择题1.以下叙述正确的是A: do-while 语句构成的循环不能用其它语句构成的循环来代替。

B: do-while 语句构成的循环只能用break 语句退出。

C: 用do-while 语句构成的循环,在while 后的表达式为非零时结束循环。

D: 用do-while 语句构成的循环,在while 后的表达式为零时结束循环。

2.下面有关for 循环的正确描述是A: for 循环只能用于循环次数已经确定的情况B: for 循环是先执行循环体语句,后判定表达式C: 在for 循环中,不能用break 语句跳出循环体D: for 循环体语句中,可以包含多条语句,但要用花括号括起来3.C 语言中while 和do-while 循环的主要区别是A: do-while 的循环体至少无条件执行一次B: while 的循环控制条件比do-while 的循环控制条件严格C: do-while 允许从外部转到循环体内;D: do-while 的循环体不能是复合语句;4.下列关于switch 语句和break 语句的结论中,正确的是A: break 语句是switch 语句中的一部分B: 在switch 语句中可以根据需要使用或不使用break 语句C: 在switch 语句中必须使用break 语句D: switch 语句是break 语句的一部分5..以下正确的描述是A: continue 语句的作用是结束整个循环的执行;B: 只能在循环体内和switch 语句体内使用break 语句;C: 在循环体内使用break 语句或continue 语句的作用相同;D: 从多层循环嵌套中退出时,只能使用goto 语句;6.语句while(!e);中的条件!e 等价于A: e==0B: e!=0C: e!=1D: ~e7.在以下给出的表达式中,与while(E)中的E不等价的表达式是A: !E=0B: E>0||E<0C: E==0D: E!=08.在C 语言中,当do-while 语句中的条件为()时,结束该循环。

(完整版)C语言循环结构练习题集带答案解析

(完整版)C语言循环结构练习题集带答案解析

第5章循环结构程序设计5.1 基本知识点while语句的使用格式和注意事项do-while语句的使用格式和注意事项for语句的使用格式和注意事项break和continue语句在循环语句中的应用循环结构的嵌套使用goto语句实现循环结构穷举法程序设计方法迭代程序设计方法5.2 练习题51. 单项选择题(1)语句while (!e);中的条件!e等价于 A 。

A. e==0B. e!=1C. e!=0D. ~e(2)下面有关for循环的正确描述是 D 。

A. for循环只能用于循环次数已经确定的情况B. for循环是先执行循环体语句,后判定表达式C. 在for循环中,不能用break语句跳出循环体D. for循环体语句中,可以包含多条语句,但要用花括号括起来(3)C语言中 D 。

A. 不能使用do-while语句构成的循环B. do-while语句构成的循环必须用break语句才能退出C. do-while语句构成的循环,当while语句中的表达式值为非零时结束循环D. do-while语句构成的循环,当while语句中的表达式值为零时结束循环(4)C语言中while和do-while循环的主要区别是 A 。

A. do-while的循环体至少无条件执行一次B. while的循环控制条件比do-while的循环控制条件严格C. do-while允许从外部转到循环体内D. do-while的循环体不能是复合语句(5)以下程序段 C 。

int x=-1;do{x=x*x;}while (!x);A. 是死循环B. 循环执行二次C. 循环执行一次D. 有语法错误(6)下列语句段中不是死循环的是__C__。

A. i=100;while (1){i=i%100+1;if (i==20) break;}B. for (i=1;;i++)sum=sum+1;C. k=0;do{++k;} while (k<=0);D. s=3379;while (s++%2+3%2)s++;(7)与以下程序段等价的是__A__。

循环试题及答案

循环试题及答案

循环试题及答案一、单项选择题(每题2分,共20分)1. 在循环结构中,以下哪个关键字用于控制循环的执行次数?A. ifB. forC. whileD. switch答案:B2. 在for循环中,以下哪个表达式用于初始化循环变量?A. 条件表达式B. 循环体C. 初始表达式D. 终止条件答案:C3. 下列哪个选项是while循环的一般形式?A. while (条件) {循环体}B. for (初始化; 条件; 迭代) {循环体}C. do {循环体} while (条件);D. A和B答案:A4. 在循环中,break语句的作用是什么?A. 继续执行下一个循环B. 跳出当前循环C. 跳转到循环的开始D. 终止程序答案:B5. 下列哪个选项不是循环结构的特点?A. 可以执行0次B. 可以执行有限次C. 可以执行无限次D. 只能执行一次答案:D6. 在for循环中,迭代表达式的作用是什么?A. 用于初始化循环变量B. 用于更新循环变量C. 用于判断循环条件D. 用于执行循环体答案:B7. 下列哪个关键字不是用于循环控制的?A. continueB. breakC. returnD. goto答案:C8. 在while循环中,如果条件表达式始终为真,会发生什么?A. 循环将无限执行B. 循环将执行一次C. 循环将不执行D. 程序将崩溃答案:A9. 下列哪个选项是do-while循环的特点?A. 循环体至少执行一次B. 循环体可能不执行C. 循环体只执行一次D. 循环体执行次数无限答案:A10. 在for循环中,以下哪个表达式用于判断循环是否继续?A. 初始表达式B. 条件表达式C. 迭代表达式D. 循环体答案:B二、填空题(每题2分,共10分)1. 在for循环中,循环变量的初始值由______表达式设定。

答案:初始2. 循环结构通常用于执行______次的操作。

答案:重复3. 使用______语句可以立即退出循环。

C语言循环结构练习题带答案

C语言循环结构练习题带答案

.. . .第5章循环结构程序设计练习题1. 单项选择题(1)语句while (!e);中的条件!e等价于 A 。

A. e==0B. e!=1C. e!=0D. ~e(2)下面有关for循环的正确描述是 D 。

A. for循环只能用于循环次数已经确定的情况B. for循环是先执行循环体语句,后判定表达式C. 在for循环中,不能用break语句跳出循环体D. for循环体语句中,可以包含多条语句,但要用花括号括起来(3)C语言中 D 。

A. 不能使用do-while语句构成的循环B. do-while语句构成的循环必须用break语句才能退出C. do-while语句构成的循环,当while语句中的表达式值为非零时结束循环D. do-while语句构成的循环,当while语句中的表达式值为零时结束循环(4)C语言中while和do-while循环的主要区别是 A 。

A. do-while的循环体至少无条件执行一次B. while的循环控制条件比do-while的循环控制条件严格C. do-while允许从外部转到循环体D. do-while的循环体不能是复合语句(5)以下程序段 C 。

int x=-1;do{x=x*x;}while (!x);A. 是死循环B. 循环执行二次C. 循环执行一次D. 有语法错误(6)下列语句段中不是死循环的是__C__。

. 学习.资料.第5章循环结构程序设计35A. i=100;while (1){i=i%100+1;if (i==20) break;}B. for (i=1;;i++)sum=sum+1;C. k=0;do{++k;} while (k<=0);D. s=3379;while (s++%2+3%2)s++;(7)与以下程序段等价的是__A__。

while (a){if (b) continue;c;}A. while (a)B. while (c){ if (!b) c; } { if (!b) break; c; }C. while (c)D. while (a){ if (b) c; } { if (b) break; c; }(8)以下程序的输出结果是_B___。

c++while循环题目

c++while循环题目

c++while循环题目while循环是C语言中常用的控制结构之一,它用于重复执行一段代码,直到满足某个条件为止。

下面是一些关于while循环的题目,供大家练习和掌握while循环的使用方法。

1. 打印九九乘法表题目描述:使用while循环打印九九乘法表,要求每行打印若干个乘法表达式,每行末尾要换行。

解题思路:使用while循环,初始条件为i=1,循环条件为i<=9。

在每次循环中,使用j从1到i的乘法表达式,并在末尾添加换行符。

代码实现:```c#include <stdio.h>int main() {int i = 1;while (i <= 9) {for (int j = 1; j <= i; j++) {printf("%d*%d=%d\t", j, i, i*j);}printf("\n");i++;}return 0;}```2. 计算斐波那契数列前n项和题目描述:使用while循环计算斐波那契数列前n项的和,要求使用递归或循环来实现。

解题思路:使用while循环可以很方便地实现斐波那契数列的迭代计算。

在每次循环中,可以累加前两项的和,并输出当前项的值。

递归实现需要定义一个递归函数,通过不断调用自身来计算数列中的项。

代码实现(循环实现):```c#include <stdio.h>long long fibonacci(int n) {if (n <= 0) {return 0;} else if (n == 1) {return 1;} else {long long a = 1, b = 1, sum = 1;int i;for (i = 2; i <= n; i++) {long long c = a + b;sum += c;a = b;b = c;}return sum;}}int main() {int n = 10; // 计算前10项的和long long result = fibonacci(n);printf("斐波那契数列前%d项的和为%lld\n", n, result);return 0;}```总结:通过以上两个题目的练习,我们可以更好地掌握while循环的使用方法。

C循环控制结构练习题

C循环控制结构练习题

循环控制结构练习题1.从键盘上输入一个正整数n,计算其阶乘n!#include<iostream>#include<cmath>using namespace std;int f(int n){int t = 1;for (int i = n; i > 0; i--)t = t*i;return t;(0的阶层为1)}int main(){int n;cout <<"n=";cin >> n;cout << endl;if (n < 0)n = abs(n);cout <<"n!="<<f(n);system("pause");return 0;}2.从键盘上输入一个正整数n,判断是否是素数?法1:#include<iostream>#include<iomanip>using namespace std;void f(int n) {int k = sqrt(n),i;for ( i = 2; i <= k; i++)if (n%i == 0)break;if (i >= k+1)cout <<n<<"是素数"<< endl;else cout <<n<<"不是素数"<< endl;}int main(){int n;cout <<"n=";cin >> n;f(n);system("pause");return 0;}法2;#include<iostream>#include<iomanip>using namespace std;bool f(int n) {int k = sqrt(n), i;for (i = 2; i <= k; i++)if (n%i == 0)break;if (i >= k + 1)return 1;else return 0;}int main(){int n;cout <<"n=";cin >> n;f(n);if(f(n))cout << n <<"是素数"<< endl;else cout << n <<"不是素数"<< endl;system("pause");return 0;}bool f2(int n){int k=sqrt(n),i;for( i=2;i<=k;i++)if(n%i==0)return 0;if(i>=k+1)return 1;1}int main(){int n;while(1){cin>>n;if(n==0)break;if(f2(n))cout <<"是素数!!"<<endl;}system("pause");return 03.编写程序,输入一个整数,求该整数的各位数字和。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
27.以下程序段的运行结果是( )
for (y=1;y<10;) y=((x=3*y,x+1),x-1);
printf(“x=%d,y=%d”,x,y);
A. x=27,y=27 B.x=12,y=13 C.x=15,y=14 D.x=y=27
28.下面程序段的运行结果是____
for(x=3;x<6;x++)printf((x%2)?(“**%d”):(“##%d\n”),x);
B.for(表达式1;1;表达式3)
C.for(表达式1;表达式1;表达式3)
D.for(表达式1;表达式3;表达式3)
24.若i为整型变量,则以下循环执行的次数是( )
for(i=2;i=0;) printf(“%d”,i--)
A.无限次 B.0次 C.1次 D.2次
25.以下for循环的语句是( )
D.int s=36; while(s); --s;
30.执行语句for(I=1;I++<4;);后变量I的值是( )
A.3; B.4 C.5 D.不定
for(x=0,y=0;(y=123)&&(x<4);x++);
A.是无限循环 B.循环次数不定C.4次 D.3次
26.以下不是无限循环的语句是( )
A.for(y=0,x=1;x>++y;x=I++) I=x;
B.for(; ;x++=I);
C.while(1) {x++;}
D.for(I=10; ;I--) sum+=I;
int n=0;
while (n++<=2); printf("%d",n);
A,2 B、3 C、4 D 有语法错误
7、设有程序段
t=0;
while(printf("*"))
{t++; if(t<3) break;}下面描述正确的是( )
A、其中循环控制表达式与0等价
B、其中循环控制表达式与’0‘等价
while((__)!=’\n’)
{if(c>=’A’&&c<=’Z’) m++;
if(c>’a’&&c<=’z’) n++;}
printf(“%d\n”,m<n?___);}
A. c==getchar() B.getchar() C.c=getchar() D.scanf(“%c”,c)
A. n:m B.m:n C.m:m D.n:n
scanf(“%d,%d”,&a,&b);}
}A、!a=b B、a!=b C、a==b D、a=b
9、下面程序的功能是从键盘输入的一组字符中统计出大写字母个数m和小写字母个数n,并输出m,n中较大者,请选择填空。
#include<stdio.h>
main( )
{int m=0,n=0;
char c;
A.for循环只能用于循环次数已经确定的情况
B.for 循环是先执行循环体语句,后判断表达式
C.在for循环中,不能用break语句跳出循环体
D.for循环的循环体语句中,可以包含多条语句,但必须花括号括起来
23.对for(表达式1;; 表达式3)可理解为( )
A.for(表达式1;0; 表达式3)
printf("%d,%d,%d",a,b,c);
A、1,2,0 B、2,1,0 C 、1,2,1 D、2,1,1
5、下面程序段的运行结果是( )
x=y=0;
while(x<15) y++,x+=++y;
printf("%d,%d",y,x);
A、20,7 B、6,12 C、20,8 D 8,20
6、下面程序段的运行结果是( )
14.C语言中while和do-while循环的主要区别是( )
A.do-while的循环体至少无条件执行一次
B.while的循环控制条件比do–while的循环控制条件严格
C.do-while允许从外部转到循环体内
D.do-while的循环体不能是复合语句
15 .以下程序段()
x=-1
do{x=x*x;}
#include<stdio.h>
main( )
{char c;
int v0=0,v1=0,v2=0;
do{
switch(c=getchar( ))
{case’a’:case’A’:
case’e’:case’E’:
case’i’:case’I’:
case’o’:case’O’:
case’u’:case’U’:v1+=1;
{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”);}
A.668977 B.668966 C.66778777 D.6688766
while(____)
{if(max<a) max=a;
scanf(“%d”,&a);}
printf(“%d”,max);}
A.a==0 B.a C!a==1 D.!a
12、下面程序的运行结果是( )
main( )
{int num=0;
while(num<=2)
{num++; printf(“%d\n”,num);}
#include<stdio.h>
main( )
{int a=1,b=10;
do
{b-=a;a++;}while(b--<0);
printf(“a=%d,b=%d\n”,a,b);}
a=3,b=11 B)a=2,b=8 C)a=1,b=-1 D)a=4,b=9
22.下面有关for循环的正确描述是( )
D.do-while循环中,根据情况可以省略while
17.若有以下语句
int x=3;
do{print("%d\n",x-=2);} while(!(--x));则上面程序段()
A.输入的是1 B.输出的是1和-2 C.输出的是3和0 D.死循环
18.下面程序是从键盘输入学号,然后输出学号中百位数字是3的学号,输入0时结束循环,填空。
main()
{long int num;
scanf("%ld",&num);
do{if(_____) printf("%ld,num);
scanf("%ld",&num);}
while(______);}
A.num%100/10==3 .Bnum/100%10==3 C.num%10/10==3 D.num/10%10==3
循环控制练习题
1.设有程序段 int k=10; while (k=0) k=k-1; 则下面描述中正确的是 ( )
A while循环执行10次
B 循环是无限循环
C 循环体语句一次也不执行
D 循环体语句执行一次
2.设有以下程序段 int x=0,s=0; while(!x!=0)s+=++x;printf("%d",s) ;则( )
a)**3 b)##3c)##3 d)**3##4
##4 **4 **4##5 **5
**5 ##5
29.下列程序段不是死循环的是()
A. int I=100
while(1)
{I=I%100+1;
if(I>100)break;}
B. for(;;)
C. int k=0;
do{++k;}while(k>=0);
C 、其中循环表达式是不合法的
D、以上说法都不对
8、下面程序的功能是将从键盘输入的一对数,由小到大排序输出。当输入一对相等的数时结束循环,请选择填空。
main()
{int a,b,t;
scanf(“%d,%d”,&a,&b);
while( )
{if(a>b) {t=a;a=b;b=t;}
printf(“%d,%d\n”,a,b);
10、下面程序的功能是将小写字母变成对应大写字母后的第二个字母。其中y变成A,Z变成B。填空
#include<stdio.h>
main()
{char c;
while((c=getchar( ))!=’\n’)
{if(c>=’a’&&c<=’z’)
{_______;
if(c>=’Z’&&c<=’Z’+2)
default:v0+=1;v2+=1;}
}while(c!=’\n’);
printf(“v0=%d,v1=%d,v2=%d\n”,v0,v1,v2);}
A)v0=7,v1=4,v2=7 B)v0=8,v1=4,v2=8
C)v0=11,v1=4,v2=11 D)v0=12,v1=4,v2=12
21.下面程序的运行结果是
A.!num B.num>0==0 C.!num==0 D.!num!=0
19.下面程序的运行结果是( )
相关文档
最新文档