单循环:
1、输出1~1000;(1,2,3,4,5,…………998,999,1000)
2、求1+2+……+100之和。
3、求 1到 100之间的奇数之和、偶数之和。
4、求 Sn=a+aa+aaa+...+aa...a之值,其中 a是一个数字。例如 2+ 22 +222+2222(此
时n=4),n由键盘输入。
5、打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等
于该数本身。例如 153是一个水仙花数,因为 153=。
6、3025这个数具有一种独特的性质:将它平分为两段,即30和25,使之相加后求平方,
即(30+25),恰好等于3025本身。请求出具有这样性质的全部四位数。
7、任意十个数,打印出它们中的最大数、最小数。
8、一个数恰好等于它的平方数的右端,这个数称为同构数。如5的平方是25,5是25中的
右端的数,5就是同构数。找出1~1000之间的全部同构数。
9、打印出一个任意整数的所有因数。
10、输入两个正整数m和n,求其最大公约数和最小公倍数。
提示:求 m,n的最大公约数:首先将m除以 n(m>n)得余数 R,再用余数 R 去除原来的除数(m=n,n=r,原除数变为被除数,余数变为除数),得新的余数,重复此过程直到余数为 0 时停止,此时的除数就是m 和 n的最大公约数。求 m和 n的最小公倍数: m和 n的积除以 m 和 n 的最大公约数。
11、有一个分数序列:2/1,3/2,5/3,8/5,13/8,21/13,……,求出这个数列的前20项之
和。
12、有一个四位正整数,组成这个四位数的四个数字各不相同,如果把它们的首尾互换,
第二位与第三位互换,组成一个新的四位数。原四位数为新四位数的4倍,请找出一个这样的四位数。
13、使用下面的格式打印出所有大小写字母的ASCII码,每行打印五个(要求使用一次循
环):
14、输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。
双重循环、多重循环
15、打印九九乘法表。
16、打印出下图所示图形(最宽行*的个数由用户输入):
17、打印出下图所示图形:
18、用三重循环打印出所有水仙花数(如153=)
19、公元钱五世纪,我国古代数学家张丘建在《算经》一书中提出了“百鸡问题”:鸡翁
一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?
20、求满足后面式子的X、Y、Z的值:XYZ+YZZ=532。
21、一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如,6 的因子为1、2、
3,而6=1+2+3,因此6 是“完数”。编程序找出1000之内的所有完数。
22、求500以内的所有亲密数对。若正整数A的所有因子(包括1但不包括自身,下同)
之和为B,而B的因子之和为A,则称A和B为一对亲密数对。
23、求(即求1!+2!+3!+...+20!)。
24、两个乒乓球队进行比赛,各出3人。甲队为A,B,C等3人,乙队为X,Y,Z等3
人。已经抽签决定比赛名单。有人向队员打听比赛的名单,A说他不和X比,C说他不和X,Z比,请编程找出3对比赛选手的名单。
25、判断101-200之间有多少个素数,并输出所有素数。
循环练习:
26、用1到9组成3个3位数,且三者之比为1:2:3(稍有难度)。
27、一个四位数,前两位相同,后两位相同,并且该四位数是一个整数的平方,编程找出
这个四位数。
28、个位数为6且能被3整除的五位数共有多少?
29、求100到1000之间有多少个其数字之和为5的整数。
30、设N是一个四位数,它的9倍恰好是其反序数,求N。反序数就是将整数的数字倒过
来形成的整数。
31、问555555的约数中最大的三位数是多少?
32、打印如下图所示数字图形:
33、在下面式子中的二个□内填入一个同样的数字,使等式成立。
□3*6528=3□*8256
34、A、B两个自然数的和、差、积、商四个数加起来等于243,求A、B两数。
35、有三种明信片:第一种每套一张,售价2元;第二种每套一张,售价4元;第三种每套
9张,售价2元。现用100元钱要买100张明信片,要求每种明信片至少要买一套,问三种明信片应各买几套?请输出全部购买方案。(14,14,8 31,6,7)
36、输入十个裁判的打分,去掉一个最高分,去掉一个最低分,求最终平均分。
37、有人想将手中一张面值100元的人民币换成5元、1元、0.5元面值的零钱100张,以
上三种面值的零钱至少有一张,问共有几种换法。
38、用近似公式求自然对数的底e的值。
39、写一程序,要求用户在键盘上输入一个整数,并把每位数字转换为英文。例如:输入
1024时,输出One Zero Two Four。
40、韩信有一队兵,他想知道有多少人,便让士兵排队报数:按从1到5报,最末一个士
兵报的数为1;按从1到6报,最后一个士兵报的数为5,按从1到7报,最末一个士兵报的数为4;最后在按从1到11报,最末一个士兵报的数为10.你知道韩信至少有多少兵吗?
41、一个正整数有可能可以被表示为n(n>=2) 个连续正整数之和,如:
15=1+2+3+4+5
15=4+5+6
15=7+8
请编写程序,根据输入的任何一个正整数,找出符合这种要求的所有连续正整数序列。
未找到序列数,输出NONE
42、父亲对儿子说:“做对一道题给8分,做错一道题扣5分。”做完26题后,儿子得0
分,问儿子做对了几题?
43、在爱尔兰守神节那天,举行每年一度的庆祝游戏,指挥者若将乐队排成10人、9人、8
人、7人、6人、5人、4人、3人和2人时,最后的一排总是缺少一个人,那些人想这个位置大概是给数月前死去的乐队成员凯西还留着位置。指挥者见到总缺一人恼火了,叫大家排成一列纵队前进。假定人数不超过7000人,那么乐队究竟有多少人?
44、输入任一自然数,求其反序数及其位数,并输出。
45、输出下面的图形:
46、输出下面的数字图形(拉丁方阵):
47、编程输出1-10000以内所有的回文数,并统计个数。
48、今年父亲30岁,儿子6岁,问多少年以后父亲的年龄正好是儿子的2倍?
49、(1)编程计算1-2+3-4……+9999-10000的结果。
(2)编程计算1+4+9+16+25+……+10000的结果。
50、任何一个自然数m的立方均可写成m个连续奇数之和。例如:
1^3=1
2^3=3+5
3^3=7+9+11
4^3=13+15+17+19
编程实现:输入一自然数n,求组成n^3的n个连续奇数。
51、马克思在《数学手稿》中提出如下问题:有30个人(包括男人、女人和小孩)在一家
饭店吃饭共花50先令,其中每个男人花3先令,每个女人花2先令,每个小孩花1先令,问男人、女人、小孩各有多少人?
52、打印蛇形数字图形:
53、打印下面的“回形”数字图形:
54、打印字母金字塔:
55、
第3题:
main()
{
long int s=0,i=1,n,x,y;
printf("n=");
scanf("%ld",&n);
printf("x=");
scanf("%ld",&x);
y=x;
while(i<=n)
{
s=s+x;
if(i==n)
printf("%ld",x);
else
printf("%ld+",x);
x=x*10+y;
i++;
}
printf("=%ld",s);
getch();
}
第7题:
int main(void)
{
int min=0,max=0,i=1,x=0; printf("No. %d:",i);
scanf("%d",&x);
min=max=x;
i++;
while(i<=10)
{
printf("No. %d:",i); scanf("%d",&x);
if(min min=x; if(max>x) max=x; i++; } printf("max=%d\n",max); printf("min=%d",min); getch(); return 0; } 第10题 方法一: main() { int m,n,x,y,r,s; printf("m="); scanf("%d",&m); x=m; printf("n="); scanf("%d",&n); y=n; r=m%n; while(r!=0) { m=n; n=r; r=m%n; } printf("yue shu=%d\n",n); s=x*y/n; printf("bei shu=%d\n",s); getch(); } 方法二: main() { int m,n,i,xiao,da,x; scanf("%d",&m); scanf("%d",&n); if(m {xiao=m;da=n;} else {xiao=n;da=m;} for(i=xiao;i>=1;i--) { if(n%i==0&&m%i==0) { printf("zui da gong yue shu:%d\n",i); break; } } for(i=da;i<=m*n;i+=da) { if(i%m==0&&i%n==0) { printf("zui xiao gong bei shu:%d\n",i); break; } } getch(); } 第13题: main() { char i; int j; for(i='A',j=1;i<='z';i++,j++) { if(i>'Z'&&i<'a') continue; if(i=='a') { printf("\n\n"); j=1; } if(j%5==0) printf("'%c'=%3d\n",i,i); else printf("'%c'=%3d ",i,i); } getch(); } 第14题 main() { int letters,spaces,digits,others; char c; letters=spaces=digits=others=0; while((c=getchar())!='\n') { if(c>='a'&&c<='z'||c>='A'&&c<='Z') letters++; else if(c==' ') spaces++; else if(c>='0'&&c<='9') digits++; else others++; } printf("letters=%d,spaces=%d,ditits=%d,others=%d",letters,spaces,digits,others); getch(); } 第16题 main() { int i,j,n; printf("n="); scanf("%d",&n); for(j=-n+1;j<=n-1;j++) { for(i=1;i<=n-abs(j);i++) { printf("*"); } printf("\n"); } getch(); } 第17题: (图一) main() { int i,j,k,n; scanf("%d",&n); for(j=-n+1;j<=n;j+=2) { for(k=1;k<=abs(j)/2;k++) printf(" "); for(i=1;i<=n-abs(j);i++) printf("*"); printf("\n"); } getch(); } (图二) main() { int i,j,k,n; scanf("%d",&n); for(j=-n+1;j<=n;j+=2) { for(k=1;k<=abs(j)/2;k++) printf(" "); for(i=1;i<=n-abs(j);i++) { if(i==1||i==n-abs(j)) printf("*"); else printf(" "); } printf("\n"); } getch(); } 第18题: main() { int i,j,k,n; for(i=0;i<=9;i++) for(j=0;j<=9;j++) for(k=0;k<=9;k++) if(i*i*i+j*j*j+k*k*k==i*100+j*10+k&&i*100+j*10+k>99) printf("%d%d%d\n",i,j,k) ; getch(); } 第19题: main() { int i,j,k; for(i=1;i<=25;i++) for(j=1;j<=33;j++) { k=100-i-j; if(i*5+j*3+k/3==100&&k%3==0) printf("%d,%d,%d\n",i,j,k); } getch(); } 第24题: main() { char i,j,k;/*i是a的对手,j是b的对手,k是c的对手*/ for(i='x';i<='z';i++) for(j='x';j<='z';j++) { if(i!=j) for(k='x';k<='z';k++) { if(i!=k&&j!=k) { if(i!='x'&&k!='x'&&k!='z') printf("order is a->%c\tb->%c\tc->%c\n",i,j,k); } } } getch(); } 第26题: main() { int i,j,k,x1,x2,x3,t1,t2,t3,s1,s2,s3; for(x1=123;x1<333;x1++) { i=x1%10; j=x1/10%10; k=x1/100; if((i-j)*(j-k)*(i-k)!=0&&i!=0&&j!=0&&k!=0) { x2=2*x1; x3=3*x1; t1=x2%10; if(t1==i||t1==j||t1==k||t1==0) continue; t2=x2/10%10; if(t2==i||t2==j||t2==k||t2==0) continue; t3=x2/100; if(t3==i||t3==j||t3==k||t3==0) continue; s1=x3%10; if(s1==i||s1==j||s1==k||s1==t1||s1==t2||s1==t3||s1==0) continue; s2=x3/10%10; if(s2==i||s2==j||s2==k||s2==t1||s2==t2||s2==t3||s2==0) continue; s3=x3/100; if(x3==i||x3==j||x3==k||s3==t1||s3==t2||s3==t3||s2==0) continue; if((t1-t2)*(t1-t3)*(t2-t3)!=0&&(s1-s2)*(s1-s3)*(s2-s3)!=0) printf("%d,%d,%d\n",x1,x2,x3); } } getch(); } 方法二: int a[9]; ok(int t,int *z) { int *p1,*p2; for(p1=z;p1 { *p1=t%10; t/=10; for(p2=a;p2 { if(*p1==0||*p2==*p1) return 0; } } return 1; } void main() { int m,count=0; for(m=123;m<=333;m++) { if(ok(m,a)&&ok(2*m,a+3)&&ok(3*m,a+6)) { printf("No.%d: %d %d %d\n",++count,m,2*m,3*m); } } getch(); } 第32题: #include "math.h" int main(void) { int i,j,count=0; for(i=-9;i<9;i++) { for(j=1;j<=9-abs(i);j++) { printf("%-2d ",++count); } if(i>=0) count=count-j*2+3; printf("\n"); } getch(); } int main(void) { int i,j=1,count=0; for(i=-9;i<9;i++) { printf("%*c",abs(i*2)+1,' '); for(j=1;j<=9-abs(i);j++) { printf("%3d ",++count); } if(i>=0) count=count-j*2+3; printf("\n"); } getch(); return 0; } 第39题: 方法一:(缺点:只能固定N的值小于5位数)main() { /* i:n的位数j:循环变量d:取出N中的每一位数(从高位开始)*/ int n,i,j,d,s; printf("n="); scanf("%d",&n); if(n>=10000) {i=5;s=10000;} else if(n>=1000) {i=4;s=1000;} else if(n>=100) {i=3;s=100;} else if(n>=10) {i=2;s=10;} else {i=1;s=1;} for(j=1;j<=i;j++) { d=n/s; n=n%s; s=s/10; switch(d) { case 0: printf("ZERO "); break; case 1: printf("One "); break; case 2: printf("two "); break; case 3: printf("three "); break; case 4: printf("four "); break; case 5: printf("five "); break; case 6: printf("six "); break; case 7: printf("seven "); break; case 8: printf("eight "); break; case 9: printf("nine"); break; } } getch(); } 方法二:(任意位数) int main(void) { long int n,g,s=0,w1=0,w2=0,s2,i; scanf("%ld",&n); while(n!=0) { g=n%10; n=n/10; s=s*10+g; w1++; } s2=s; while(s2!=0) { s2=s2/10; w2++; } while(s!=0) { g=s%10; s=s/10; switch(g) { case 1: printf("One "); break; case 2: printf("Two "); break; case 3: printf("Three "); break; case 4: printf("Four "); break; case 5: printf("Five "); break; case 6: printf("Six "); break; case 7: printf("Seven "); break; case 8: printf("Eight "); break; case 9: printf("Nine "); break; case 0: printf("Zero "); break; default: printf("WRONG"); break; } } for(i=1;i<=(w1-w2);i++) { printf("Zero "); } getch(); return 0; } 第41题: int main(void) { int i,j,k,n,s=0,flag=0; printf("n="); scanf("%d",&n); for(i=1;i<=n/2;i++) { s=0; for(j=i;j { s+=j; if(s==n) { for(k=i;k<=j;k++) printf("%d ",k); printf("\n"); flag=1; break; } if(s>n) break; } } if(flag==0) printf("NONE"); getch(); } 第44题 int main(void) { long int n,fan=0,wei=0,x; scanf("%ld",&n); do{ x=n%10; fan=fan*10+x; n=n/10; wei++; }while(n!=0); printf("fan=%ld,wei shu=%ld",fan,wei); getch(); } 第45题: (图一) main() { int i,j,n; scanf("%d",&n); for(i=1;i<=n;i++) { for(j=i;j<=n;j++) printf(" "); for(j=1;j<=2*i-1;j++) { printf("%c",i+’A’-1); } printf("\n"); } getch(); } (第三个图) main(void) { int i,j,n; scanf("%d",&n); printf("\n"); for(i=1;i<=n;i++) { printf(" "); for(j=n-i;j>=1;j--) printf(" "); for(j=1;j<=2*i-1;j++) printf("*"); for(j=(n-i)*2;j>=1;j--) printf(" "); for(j=1;j<=2*i-1;j++) printf("*"); printf("\n"); } getch(); } 第46题 int main(void) { int i,j,n; printf("\n n="); scanf("%d",&n); for(i=1;i<=n;i++) { for(j=i;j { printf(" %d",j%n==0?n:j%n); } printf("\n"); } getch(); } 第47题: main() { long int i,n,yu,s,sum=0; for(i=0;i<=10000;i++) { n=i; s=0; while(n!=0) { yu=n%10; n=n/10; s=s*10+yu; } if(i==s) { printf("%ld ",s); sum++; } } printf("\nsum=%ld",sum); getch(); } 第50题: int main(void) { int m,mid,fst,i; scanf("%d",&m); mid=m*m; if(m%2==1) fst=mid-(m/2)*2; else fst=mid-m+1; printf("%d^3=",m); for(i=0;i printf("%d ",fst+i*2); getch(); return 0; } 第52题: int main(void) { int i,j,n,x; printf("\n n="); scanf("%d",&n); x=-n+1; for(i=1;i<=n;i++) { if(i%2==0) { x+=n; for(j=1;j<=n;j++) { printf("%3d",--x); } } else { x+=n; for(j=1;j<=n;j++) { printf("%3d",x++); } } printf("\n"); } getch(); return 0; } 方法二: main() { int i,j,n,x,hang; n=1; scanf("%d",&hang); for(i=1;i<=hang;i++) { x=n+i*hang; for(j=1;j<=hang;j++) { 第五章循环结构程序设计 1.用for循环语句编程输出1~20之间的所有整数,两数之间以空格分隔。 #include printf(" "); } } 4.输出100~200之间所有能被3和7整除的数(每行输出4个数)。#include int i,j=0; for(i=1;i<=1000;i++) { if((i%3==2)&&(i%5==3)&&(i%7==2)) { j++; printf("%12d",i); if(j%5==0) printf("\n"); } } } 6.先读入一个正整数n,然后计算并显示前n个偶数的和。例如n为5,则求2+4+6+8+10的值,即sum=30。 #include 第5章循环结构程序设计作业参考答案 班级学号姓名 【第140页】 5-1、请画出课本里5.6中给出的3个程序段的传统流程图。 (1)程序1: #include for (j=1;j<=5;j++,n++) { if(n%5==0)printf("\n"); //控制在输出5个数据后换行 if (i==3 && j==1) continue; //遇到第3行第1列,提前结束执行本次内循环体 printf("%d\t",i*j); } printf("\n"); return 0; } (1)程序1流程图(2)程序2流程图(3)程序3流程图 5-3、输入两个正整数m和n,求其最大公约数和最小公倍数。 #include 第五章循环结构 一、选择题 1.C语言中while和do_while循环的主要区别是( )。 A.do_while的循环体至少无条件执行一次 B.while的循环控制条件比do_while的循环控制条件严格 C.do_while允许从外部转到循环体内 D.do_while的循环体不能是复合语句 2.以下描述中正确的是( )。 A.由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句 B.do-while循环由do开始,用while结束,在while(表达式)后面不能写分号 C.在do-while循环体中,是先执行一次循环,再进行判断 D.do-while循环中,根据情况可以省略while 3.语句while (!E); 括号中的表达式!E等价于( ) 。 A.E==0 B.E!=1 C.E!=0 D.E==1 4.以下程序的功能是计算:s= 1+1/2+1/3+……+1/10 main() { int n; float s s=1.0; for(n=10;n>1;n--) s=s+1/n; printf("%6.4f\n",s); } 程序运行后输出结果错误,导致错误结果的程序行是( )。 A.s=1.0; B.for(n=10;n>1;n--) C.s=s+1/n; D.printf("%6.4f\n",s); 5.下面程序段的运行结果是( )。 a=1;b=2;c=2; while(a 第5章循环结构程序设计 通过本章实验作业应达目标 1.熟悉while、for、do_while、break、continue语句的作用与使用规范,能使用while语句、for 语句、do_while语句实现循环结构; 2.掌握循环结构和选择结构之间嵌套、多重循环间嵌套的设计方法。 3.进行算法设计训练,能综合所学控制结构语句解决一般问题。 本章必须上交作业 程序5_1.c、5_2.c、5_3.c、5_5.c、5_6.c、5_7.c、5_8.c、5_11.c上传至http://121.251.227.27:8080/c 1.循环设计 循环是在循环条件为真时重复执行一组循环体语句的控制结构,是计算机解题的一个基本结构。循环控制有两种基本方法:计数法和标志法。 (1)计数器控制的循环 事先准确地知道循环次数,因此设计一个循环控制变量,由变量值来控制循环次数。每循环一次,循环变量的值会递增(增值通常为1或-1),当其值达到终值时结束循环。 (2)标志控制的循环 事先不知道准确的循环次数,由某一目标值标记循环的结束。如,例3-23中以变量sum的值达到标记值1000作为循环的结束,例3-24中就是以键盘输入一个负数为标记结束循环。 2.基本算法 程序设计的首要工作是算法设计,离开了算法也就没有了程序。算法,是指完成某一项工作而采取的方法和步骤,具体到程序设计,是对解题过程的准确而完整的描述,并用一种程序设计语言的来实现。 循环主要用来解决程序设计中两类基本的算法:穷举和迭代。 1. 穷举算法 穷举的基本思想是对问题的所有可能状态一一测试,直到找到解或将全部可能状态都测试过为止。穷举是一种重复型算法,其核心是设计循环,在循环体中依次测试。 例1 输入两个正整数x和y,求其最大公约数。 #include 第三章循环结构 3.1 选择题 1.以下程序的输出结果是( )。 main() { int n=4; while (n--) printf(〞%d〞,--n); } A.20 B.31 C.321 D.210 2.以下程序的输出结果是( )。 main() {int x=10,y=10,i; for(i=0;x>8;y=++i) printf("%d%d",x--,y); } A.10192 B.9876 C.10990 D.101091 3.当执行以下程序段时。 x=-1; do {x=x*x;} while (!x); A.循环体将执行一次 B.循环体将执行两次 C.循环体将执行无数多次 D.系统将提示有语法错误4.执行以下程序后输出的结果是()。 main() { int y=10; do{y--;}while(--y); printf("%d\n",y--);} A.-1 B.1 C.8 D.0 5.下面程序的输出结果是()。 main() { int x=3,y=6,a=0; while (x++!=(y-=1)) {a+=1; if (y A.x=4,y=4,a=1 B.x=5,y=5,a=1 C.x=5,y=4,a=3 D.x=5,y=4,a=1 6.若i,j已定义为int类型,则以下程序段中内循环的总的执行次数是()。 for (i=5;i;i--) for (j=0;j<4;j++) {…} A.20 B.24 C.25 D.30 7.请读程序: #include 第五章循环结构 5.1 选择题 1.以下程序的输出结果是( )。 main() { int n=4; while (n--) printf(〞%d〞,--n); } A.20 B.31 C.321 D.210 2.以下程序的输出结果是( )。 main() {int x=10,y=10,i; for(i=0;x>8;y=++i) printf("%d%d",x--,y); } A.10192 B.9876 C.10990 D.101091 3.当执行以下程序段时。 x=-1; do {x=x*x;} while (!x); A.循环体将执行一次 B.循环体将执行两次 C.循环体将执行无数多次 D.系统将提示有语法错误4.执行以下程序后输出的结果是()。 main() { int y=10; do{y--;}while(--y); printf("%d\n",y--);} A.-1 B.1 C.8 D.0 5.下面程序的输出结果是()。 main() { int x=3,y=6,a=0; while (x++!=(y-=1)) {a+=1; if (y A.x=4,y=4,a=1 B.x=5,y=5,a=1 C.x=5,y=4,a=3 D.x=5,y=4,a=1 6.若i,j已定义为int类型,则以下程序段中内循环的总的执行次数是()。 for (i=5;i;i--) for (j=0;j<4;j++) {…} A.20 B.24 C.25 D.30 7.请读程序: #include 第五章循环结构 一、单项选择题(本大题共20小题,每小题1分,共20分) 1.执行下面程序段后,输出字符B的个数是() x=0; while(x<=5) {printf("B"); x+=2;} A.0个B.3个C.5个D.6个 2.在下述程序中,for循环执行的次数是() main( ) {int i =0,j=10,k=2,s=0; for(; ;) {i+=k; if(i>j) {printf("%d\n",s); break;} s+=i; } } A.4 B.5 C.6 D.7 3.执行下面程序段后,输出字符A的个数是() for(i=0;i<=5;i+=2) printf(“A”); A.0个B.3个C.5个D.6个 4.执行while(表达式)循环的条件是() A.当表达式的值为0时B.仅当表达式的值为1时 C.当表达式的值非0时D.当表达式的值不为1时 5.下列程序段输出的结果是() for(i=1;i<3;i+ +) for(j=1;j<3;j+ +) printf("%d",i+j); A.2 3 3 4 B.2 3 4 C.2 3 D.2 3 4 3 4 6.对do语句while(表达式);结构的循环,下列说法正确的是()A.当表达式的值为非零时不执行循环体 B.循环体至少被执行一次 C.当表达式的值为零时循环体一次也不执行 D.循环体仅被执行一次 7.只能在循环语句中用于结束本轮循环的语句是() A.break; B.continue; C.goto D.if 10.下列程序段的输出结果是() i=1; while(i<3) {j=1; while(j<=i) {printf(“%d”,i+j); j++;} i++; printf(“\n”); } A. 2 3 3 4 B. 2 3 4 C. 2 3 D. 2 3 4 3 4 8.下列程序段的输出结果是() a=100; do a=a+l; while(a>120); printf(“%d”,a); A.100 B.101 C.120 D.121 9.关于break和continue语句,下列说法正确的是() A.在循环体中可以用break语句结束本次循环 B.在循环体中可以用continue语句结束本次循环 C.break语句仅能使用在switch结构中 D.可以使用continue语句跳出switch结构 10.对于for(表达式l;表达式2;表达式3)语句;控制循环结束的表达式是() A.表达式1 B.表达式2 C.表达式3 D.表达式l和表达式3 11.下列语句中不能 ..实现循环结构的语句是() A.if语句 B.while语句 C.do—while语句 D.for语句 12.以下程序的输出结果是() main()第五章 循环结构程序设计编程题(参考答案)
第5章 循环结构程序设计作业参考答案
第五章循环结构
第5章循环结构程序设计
第5章 循环结构 习题
第五章 循环结构
第5章 循环结构