(完整版)C语言循环习题答案
(完整版)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;
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{
printf(“%d”,x--);
}while(!x);
}
该程序的执行结果是:(C)
A 3 2 1
B 2 1 0
D 2
9.若k 为整型变量,则下面while 循环执行的次数为:(A)
k=10;
while(k==0) k=k-1;
A 0
B 1
C 10
D 无限次
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)
D for(表达式1 表达式2;表达式3)
12.若i 为整型变量,则以下循环执行的次数是(B)for(i=2;i==0;)printf(“%d”,i--);
A.无限次 B 0 次 C 1 次 D 2 次
13.以下循环体的执行次数是;(B)
main()
{
int I,j;
for(i=0,j=3;i<=j;i+=2,j--)
printf(“%d\n”,i);
}
B 2
C 1
D 0
14.执行以下程序后,输出结果是:(D) main()
{ int y=10;
do { y--;}while(--y);
printf(“%d”,y--);
}
A -1
B 1
C 8
D 0
15 以下程序的输出结果是:(C) mian()
{ int a,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,continue)
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 3 4 5 -1 回车,则下面程序运行的结果是:(14,- 1)
main()
{ int n,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
s+=i*10+j;
printf(“\n%d”,s);
}
5.下面程序的运行结果是19 (i=9,s=9;i=6,s=15;i=3,s=18) main()
{
int i=10,s=0;
for(;--i;)
if(i%3==0)
s+=i;
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()
{int i,j,a=0;
for(i=0;i<2;i++)
for(j=4;j>=0;j--)
a++;
}
8.下面的程序运行后,a 的值为:7
main()
{ int i,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.编写程序输出下面图形
*
***
*****
*******
*****
***
*
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
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语言程序设计(循环)习题与答案
一、单选题 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语言程序设计习题集第4章 循环结构(答案)
第4章循环结构 一、选择题 1、有以下程序段 int k=0; while(k=1)k++; while 循环执行的次数是( A) A) 无限次B) 有语法错,不能执行 C) 一次也不执行D) 执行1次 2、t为int类型,进入下面的循环之前,t的值为0 while( t=1) { …… } 则以下叙述中正确的是( B) A) 循环控制表达式的值为0 B) 循环控制表达式的值为1 C) 循环控制表达式不合法 D) 以上说法都不对 3、在C程序中,与while(m)中表达式m完全等价的是(B ) A) m==0 B) m!=0 C) m==1 D) m!=1 4、有以下程序,程序运行后的输出结果是(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) 9876
7、以下程序的输出结果是( B ) main() { int num= 0; while(num<=2) { num++; printf(“%d\n”,num);} } A) 1 B) 1 C)1 D) l 2 2 2 3 3 4 8、有以下程序,若运行时输入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;} else break;} printf(“%f\n”,y);} A)1.500000 B)1.600000 C)2.000000 D)2.400000 9、执行以下程序段时 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 {
(完整版)c语言第六章循环结构程序设计(习题册答案)
第六章循环结构程序设计 基础练习(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)。
C语言循环结构练习题带答案
第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++;
C程序设计(循环)习题与答案
一、单选题 1、有以下程序段: int k=2; while (k=0) { printf("%d",k) ; k-- ; } 则下面描述中正确的是()。 A.循环体语句一次也不执行 B.while循环执行10次 C.循环是无限循环 D.循环体语句执行一次 正确答案:A 2、下面程序段执行后的输出结果是()。int a=1,b=2,c=3,t; while (a int main() { int x=0,y=5,z=3; while(z-->0&&++x<5) y=y-1; printf("%d,%d,%d",x,y,z);
return 0; } A.4,3,-1 B.5,-2,-5 C.3,2,0 D. 3,2,-1 正确答案:D 4、下面程序的功能是从键盘输入一组字符,从中统计大写字母和小写字母的个数,选择()填入到【】中。 #include
C语言循环结构练习题带标准答案
C语言循环结构练习题带标准答案 第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。 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。
C语言循环结构练习题带答案
. . 第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__。
第5章循环结构程序设计35 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语言的过程中,掌握循环语句是非常重要的,因为循环可以使程序重复执行特定的代码块。下面将介绍几道C语言循环试题及其详细答案,希望对你的学习有所帮助。 试题一: 编写一个程序,要求用户输入一个整数n,计算并输出1到n之间的所有自然数的和。 答案一: ```c #include
return 0; } ``` 试题二: 编写一个程序,要求用户输入一个正整数n,计算并输出n的阶乘。答案二: ```c #include
``` 试题三: 编写一个程序,要求用户输入一个整数n,判断并输出n是否为素数(质数)。 答案三: ```c #include