循环习题集锦
一、选择题
1、for(i=0;i〈10;i++);结束后,i的值是;(10)
A9B10 C11 D 12
2、下面程序的循环次数是:(D)
int k=0;
while(k<10)
{if(k<1)continue;
if(k==5) break;
k++;
}
A、5B6 C 4 D死循环,不能确定循环次数
3、下面程序的输出结果是(10)
main()
{
ints,k;
for(s=1,k=2;k<5;k++)
s+=k;
printf(“%d\n",s);
}
A 1 B 9 C10D15
4、要使下面程序输出10个整数,则在下画线处填入正确的数是:(c)
for(i=0;i〈=;)
printf(“%d\n”,i+=2);
A9 B10 C 18 D20
5、运行下面程序:(B)
main()
{inti=10,j=0;
do
{j=j+i;
i——;
}while(i>5);
printf(“%d\n”,j);
}
输出结果是:
A45 B40C34D55
6、运行下面程序
#include“stdio、h”
main()
{int k=0,a=1;
while(k〈10)
{
for( ;;)
{ if((k%10)==0)
break;
else
k-—;
}
k+=11;
a+=k;
}
printf(“%d%d\n”,k,a);
}
则输出的结果是(C)
A21 32B2133 C 11 12 D 1011
7、以下叙述正确的是:(D)
A、do-——while语句构成的循环不能用其她语句构成的循环来代替。
B、do-——while语句构成的循环只能用break语句退出。
C、用do—--while语句构成的循环,在while 后的表达式为非零时结束循环。
D、用do---while语句构成的循环,在while后的表达式为零时结束循环。
8、有如下程序:
main()
{intx=3;
do{
printf(“%d”,x--);
}while(!x);
}
该程序的执行结果是:(C)
A 321B 2 10 C 3 D 2ﻩ
9、若k为整型变量,则下面while循环执行的次数为:(A)
k=10;
while(k==0) k=k—1;
A0 B1 C 10D无限次
10、下面有关for循环的正确描述是(D)
A、for循环只能用于循环次数差不多确定的情况
B、for循环是先执行循环体语句,后判断表达式
C、在for循环中,不能用break语句跳出循环体。
D、for循环的循环体语句汇总,能够包罗多条语句,但必须用花括号括起来。
11、对for(表达式1;;表达式3)可理解为(B)
A for(表达式1;0;表达式3)
B for(表达式1;1;表达式3)
C for(表达式1;表达式1;表达式3)
Dfor(表达式1表达式2;表达式3)
12、若i为整型变量,则以下循环执行的次数是(B)for(i=2;i==0;)printf(“%d”,i—-);
A、无限次 B 0次 C 1次 D 2次
13、以下循环体的执行次数是;(B)
main()
{
intI,j;
for(i=0,j=3;i〈=j;i+=2,j-—)
printf(“%d\n",i);
}
A 3B 2 C 1 D0
14、执行以下程序后,输出结果是:(D)
main()
{int y=10;
do{y--;}while(—-y);
printf(“%d",y--);
}
A -1
B 1
C 8 D0
15 以下程序的输出结果是:(C)
mian()
{inta,b;
for(a=1,b=1;a<=100;a++)
{
if(b〉=10) break;
if(b%3==1) {b+=3; continue;}
}
printf(“%d”,a);
}
A 101
B 3
C 4
D 5
二、填空题
1、循环的3个常见语句分不是?(for,while,do,break,continu e)
2、下面程序的运行结果为:(14,26)
main()
{int a=10,y=0;
do
{a+=2;y+=a;
if(y〉50) break;
}while(a<14);
printf(“a=%d,y=%d\n”,a,y);
}
3、从键盘输入1 2 345—1回车,则下面程序运行的结果是:(14,—1)
{intn,k=0;
do
{scanf(“%d”,&n);
k+=n;
}while(n!=-1);
printf(“k=%d,n=%d”,k,n);
}
4、下面程序的运行结果为:39 (——i= 1,i=2两次循环)
main()
{int i,j,s=0;
for(i=1,j=5;i〈j;i++,j—-)
s+=i*10+j;
printf(“\n%d”,s);
}
5、下面程序的运行结果是19 (i=9,s=9;i=6,s=15;i=3,s=18)
main()
{
inti=10,s=0;
for(;--i;)
if(i%3==0)
s++;
printf(“\ns=%d",s);
}
6、下面程序的运行结果是–22222(n=4,s=22; n=4,s=222;n=2,s=2222;n=1,s=22222)
main()
{int a=2,n=5,s;
s=a;
for(;—-n;)
s=s*10+a;
printf(“%d”,s);
}
7、下面的程序运行时,循环体语句“a++”运行的次数为:10
main()
{inti,j,a=0;
for(i=0;i〈2;i++)
for(j=4;j〉=0;j——)
a++;
}
8、下面的程序运行后,a的值为:7
main()
{inti,j,a=0;
for(i=0;i〈2;i++) a++;
for(j=4;j〉=0;j-—)a++;
}
9、下面程序的运行结果为:(8) -—(s=4,i=3;s=7,i=4;s=11,i=6;s=17,i=8)
int i=1,s=3;
do{
s+=i++;
if(s%7==0) continue;
else++i;
}while(s〈15);
printf(“%d”,i);
10、当运行以下程序时,从键盘输入China# 回车,则下面程序的运行结果是:5,5
#include “stdio、h”
main()
{ int v1=0,v2=0;
char c;
while((c=getchar())!=’#’)
{switch(c)
{ case‘a':
case‘h':
default:v1++;
case‘o':v2++;
}
}
printf(“%d,%d\n”,v1,v2);
}
三、改错题
1、for(i—0,i<5,i++)j++;
2、while(j<10); {j++;i=j;}
3、do {j++;a=j;}while(j〈10)
4、用下面程序来实现5!
int s=1,i=1;
while(i〈=5)
s*=i;
i++;
5、下面程序段实现求半径r=1到r=10的圆面积,直到面积大于100为止。
For(r=1;r<=10;r++)
{s=3、14*r*r;
if(s〉100) continue;
printf(“%f",s);
}
四、编程题
1、求1-2+3—4+…+99—100。
2、任意输入10个数,分不计算输出其中的正数与负数之与。3、计算1——-100以内的所有含6的数的与、
4、输出所有的3位水仙花数、所谓水仙花数是指所有位的数字的立
方之与等于该数,例如:153=13+33+53
5、编写程序输出下面图形。
1
23
456
7890
6、编写程序输出下面图形
*
***
*****
*******
*****
***
*
第六章循环结构程序设计 基础练习(A) 一、选择题 1、C语言中while和do-while循环的主要区别是(A)。 A) do-while的循环体至少无条件执行一次 B) while的循环控制条件比do-while的循环控制条件严格 C) C)do-while允许从外部转到循环体内 D) do-while的循环体不能是复合语句 2、以下描述中正确的是(C)。 A) 由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用 复合语句 B)do-while循环由do开始,用while结束,在while(表达式)后面不能写分号 C) 在do-while循环体中,一定要有能使while后面表达式的值变为零(“假”)的操 作 D)do-while循环中,根据情况可以省略while 3、设有程序段 int k=10; while(k) k=k-1; 则下面描述中正确的是(A)。 A)while循环执行10次B)循环是无限循环 C)循环体语句一次也不执行D)循环体语句执行一次 4、下列循环语句中有语法错误的是( D )。 A) while(x=y) 5;B) while(0) ; C) do 2;while(x==b);D) do x++ while(x==10); 5、已知int i=1;执行语句while (i++<4) ;后,变量i的值为(C)。 A) 3 B) 4 C) 5 D) 6 6、语句while(!E);中的表达式!E等价于(A)。 A)E==0 B)E!=1 C)E!=0 D)E==1 7、下面程序段的运行结果是(A)。 a=1; b=2; c=2; while(a main() { int num=0; while(num<=2) { num++; printf(“%d\n”,nu m); } } A)1 B)1 C)1 D)1 2 2 2 3 3 9、以下能正确计算1×2×3×…×10的程序段是(C)。
循环习题集锦 一.选择题 1.for(i=0;i<10;i++);结束后,i的值是;(10) A 9 B 10 C 11 D 12 2.下面程序的循环次数是:(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 1 B 9 C 10 D 15 4.要使下面程序输出10个整数,则在下画线处填入正确的数是:(c)
for(i=0;i<= ;) printf(“%d\n”,i+=2); A 9 B 10 C 18 D 20 5.运行下面程序:(B) main() { int i=10,j=0; do { j=j+i; i--; }while(i>5); printf(“%d\n”,j); } 输出结果是: A 45 B 40 C 34 D 55 6.运行下面程序 #include “stdio.h” main() { int k=0,a=1; while(k<10) { for( ; ;) { if((k%10)==0)
break; else k--; } k+=11; a+=k; } printf(“%d %d\n”,k,a); } 则输出的结果是(C) A 21 32 B 21 33 C 11 12 D 10 11 7.以下叙述正确的是:(D) A.do---while语句构成的循环不能用其他语句构成的循环来代替。B.do---while语句构成的循环只能用break语句退出。 C.用do---while语句构成的循环,在while 后的表达式为非零时结束循环。 D.用do---while语句构成的循环,在while后的表达式为零时结束循环。 8.有如下程序: main() { int x=3; do{
C语言循环结构练习题 带答案 Company Document number:WTUT-WT88Y-W8BBGB-
第5章循环结构程序设计 基本知识点 while语句的使用格式和注意事项 do-while语句的使用格式和注意事项 for语句的使用格式和注意事项 break和continue语句在循环语句中的应用 循环结构的嵌套 使用goto语句实现循环结构 穷举法程序设计方法 迭代程序设计方法 练习题5 1.单项选择题 (1)语句while(!e);中的条件!e等价于A。 ==0 !=1 !=0 D.~e (2)下面有关for循环的正确描述是D。 循环只能用于循环次数已经确定的情况 循环是先执行循环体语句,后判定表达式 C.在for循环中,不能用break语句跳出循环体 循环体语句中,可以包含多条语句,但要用花括号括起来(3)C语言中D。 A.不能使用do-while语句构成的循环 语句构成的循环必须用break语句才能退出 语句构成的循环,当while语句中的表达式值为非零时结束循环语句构成的循环,当while语句中的表达式值为零时结束循环(4)C语言中while和do-while循环的主要区别是A。 的循环体至少无条件执行一次 的循环控制条件比do-while的循环控制条件严格 允许从外部转到循环体内 的循环体不能是复合语句 (5)以下程序段C。 intx=-1; do { x=x*x; }
while(!x); A.是死循环 B.循环执行二次 C.循环执行一次 D.有语法错误(6)下列语句段中不是死循环的是__C__。 =100; while(1) { i=i%100+1; if(i==20)break; } (i=1;;i++) sum=sum+1; =0; do { ++k; }while(k<=0); =3379; while(s++%2+3%2) s++; (7)与以下程序段等价的是__A__。 while(a) { if(b)continue; c; } (a) (c) {if(!b)c;} {if(!b)break;c;} (c) (a) {if(b)c;} {if(b)break;c;} (8)以下程序的输出结果是_B___。 #include<> main() { inti; for(i=4;i<=10;i++) { if(i%3==0)continue; COUT<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. 运行程序段后输出0。 B. 运行程序段后输出1。 C.程序段中的控制表达式是非法的。 D.程序段执行无限次。 3.下面程序段的运行结果是________。 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 3.下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,并输出m、n 中的较大者,请选择填空。 #incldue
一、单选题 1、关于下面程序段,正确的是()。 int k=10; while(!k) k--; A.循环体一次也不执行 B.死循环 C.循环体执行1次 D.循环体执行10次 正确答案:A 2、下面程序的运行结果是( )。 #include
printf("%d",j); A.无结果 B.8910 C.789 D.91011 正确答案:C 4、 下面程序的输出结果是()。 #include
s=s+j; printf("%d",s); } A.死循环 B.0 C.不确定 D.28 正确答案:C 6、已定义int j,s; 则下面程序段的输出结果是()。 int j,s; for(j=1,s=0;j<=5;j++) s*=j; printf("%d",s); A.0 B.无结果 C.120 D.死循环 正确答案:A 7、从循环体内某一层跳出,继续执行循环外的语句是( )。 A.if语句 B.break语句 C.空语句 D.continue语句 正确答案:B 8、针对for循环语句,for(表达式1;表达式2;表达式3),下列说法正确的是()。 A.continue语句可以一次性跳出多层嵌套循环
C语言循环结构练习题带 答案 Prepared on 21 November 2021
第5章循环结构程序设计 5.1基本知识点 while语句的使用格式和注意事项 do-while语句的使用格式和注意事项 for语句的使用格式和注意事项 break和continue语句在循环语句中的应用 循环结构的嵌套 使用goto语句实现循环结构 穷举法程序设计方法 迭代程序设计方法 5.2练习题5 1.单项选择题 (1)语句while(!e);中的条件!e等价于A。 A.e==0 B.e!=1 C.e!=0 D.~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。 intx=-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___。 #include
c语言循环试题及答案 C语言是一种广泛应用于计算机编程领域的编程语言。在学习C语言的过程中,掌握循环语句是非常重要的,因为循环可以使程序重复执行特定的代码块。下面将介绍几道C语言循环试题及其详细答案,希望对你的学习有所帮助。 试题一: 编写一个程序,要求用户输入一个整数n,计算并输出1到n之间的所有自然数的和。 答案一: ```c #include
return 0; } ``` 试题二: 编写一个程序,要求用户输入一个正整数n,计算并输出n的阶乘。答案二: ```c #include
``` 试题三: 编写一个程序,要求用户输入一个整数n,判断并输出n是否为素数(质数)。 答案三: ```c #include
第5章循环结构程序设计 练习题 1. 单项选择题 (1)语句while (!e);中的条件!e等价于 A 。 A. e==0 B. e!=1 C. e!=0 D. ~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++;
一、单选题 1、计算1!+2!+3!+4!+5!编程如下,程序中下划线处应填写#include
C.10,81 D.8,64 正确答案:A 3、对于以下代码: int i; for(i=0;i<10;i++) pnntf("%d",i); for循环结束后,i的值是— A.ll B.10 C.9 D.i不再存在了 正确答案:B 4、对于以下代码: int i=6; do{ printf("%d", i-); }while(i-); 正确的是— A,输出6420-2-4…,程序无法停机B,输出6420 C.输出6420-2 D输出642 正确答案:A 5、对于以下代码:int i=6; do{
printf("%d", i-); }while(i); 最后一个输出的值是— A.2 B.3 C.O D.l 正确答案:D 6、在代码:while(e)中,e等价于_ A.e == 0 B.e != 1 C.e == 1 D.e!=0 正确答案:D 7、在代码:while© |1)中,e等价于_ A.e!=0 B.e == 1 C.e取任何值 D.e == 0 正确答案:C 8、设有程序段int k=5; while(k=0) k=k-l;则下面描述中正确的是A,循环体语句一次也不执行 B.while循环执行5次 C.循环体语句执彳亍一次 D彳盾环是无限循环 正确答案:A
第5章循环结构程序设计5.1基本知识点 ✍while语句的使用格式和注意事项 ✍do-while语句的使用格式和注意事项 ✍for语句的使用格式和注意事项 ✍break和continue语句在循环语句中的应用 ✍循环结构的嵌套 ✍使用goto语句实现循环结构 ✍穷举法程序设计方法 ✍迭代程序设计方法 5.2练习题5 1.单项选择题 (1)语句while(!e);中的条件!e等价于A。 A.e==0 B.e!=1 C.e!=0 D.~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。 intx=-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;
循环习题集锦 一. 选择题 1. for(i=0;i<10;i++);结束后,i 的值是;(10) A 9 B 10 C 11 D 12 2.下面程序的循环次数是:(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 1 B 9 C 10 D 15
4.要使下面程序输出10个整数则在下画线处填入正确的数是(c) for(i=0;i<=;) printf("%d\n”,i+=2); A 9 B 10 C 18 D 20 5.运行下面程序:(B) main() { int i=10,j=0; do { j=j+i; i--; }while(i>5); printf("%d\n”,j); } 输出结果是: A 45 B 40 C 34 D 55 6.运行下面程序 #include “stdio.h” main() { int k=0,a=1; while(k<10) { for( ; ;)
{ if((k%10)==0) break; else k--; ) k+=11; a+=k; ) printf("%d %d\n”,k,a); ) 则输出的结果是(C) A 21 32 B 21 33 C 11 12 D 10 11 7.以下叙述正确的是:(D) A.do---while语句构成的循环不能用其他语句构成的循环来代替。 B.do---while语句构成的循环只能用break语句退出。 C.用do---while语句构成的循环,在while后的表达式为非零时结束循环。 D.用do---while语句构成的循环,在while后的表达式为零时结束循环。 8.有如下程序: main() { int x=3;
第4章循环结构题 择 一、选 1、有以下程序段 intk=0; while(k=1)k++; 是(A) while循环执行的次数 A)无限次B)有语法错,不能执行 C)一次也不执行D)执行1次 ,t的值 为0 i nt类型,进入下面的循环之 2、t为 前 while(t=1) {⋯⋯} 则以下叙述中正确的是(B) A)循环控制表达式的值为0 B)循环控制表达式的值为 1 C)循环控制表达式不合法 D)以上说法都不对 3、在C程序中,与while(m)中表达式m完全等价的是(B) A)m==0B)m!=0C)m==1D)m!=1 4、有以下程序,程序运行后的输出结果是(C)。 main() {inti=1,sum=0; while(i<=4) { sum=sum+i; i=i+1; } printf(“%n”d,sum);} A)4B)5C)10D)死循环 5、有以下程序,程序运行后的输出结果是(D)。 main() {inti=1,sum=0; while(i<=4) sum=sum+i; i=i+1; printf(“%n”d,sum); } A)4B)5C)10D)死循环 6、有如下程序 main(){ intn=9; while(n>6){n--;printf(“%d”,n);} } 该程序段的输出结果是(B) A)987B)876C)8765D)9876
7、以下程序的输出结果是(B) main() {intnum=0; while(num<=2) {num++;printf(“%n”d,num);} } A)1B)1C)1D)l 222 33 4 8、有以下程序,若运行时输入3.62.4<回车>,则输出的结果是(B)。main() {floatx,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(“n%”f,y);} A)1.500000B)1.600000C)2.000000D)2.400000 9、执行以下程序段时 x=-1; do {x=x*x;} while(!x); 则下面描述正确的是(A) A)循环体将执行一次B)循环体将执行两次 C)循环体将执行无限次D)系统将提示有语法错误 10、有以下程序段其输出结果是(C) intx=3; do {printf("%d",x-=2);} while(!(--x)); A)1B)30C)1-2D)死循环 11、有如下程序 main(){ intx=23; do {