第5章 循环结构程序设计(第二次课)ppt课件.ppt

第5章 循环结构程序设计(第二次课)ppt课件.ppt

ID:58700096

大小:130.50 KB

页数:41页

时间:2020-10-04

第5章 循环结构程序设计(第二次课)ppt课件.ppt_第1页
第5章 循环结构程序设计(第二次课)ppt课件.ppt_第2页
第5章 循环结构程序设计(第二次课)ppt课件.ppt_第3页
第5章 循环结构程序设计(第二次课)ppt课件.ppt_第4页
第5章 循环结构程序设计(第二次课)ppt课件.ppt_第5页
资源描述:

《第5章 循环结构程序设计(第二次课)ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第五章循环结构程序设计5.1程序中需要用循环结构5.2用while语句和do-while语句实现循环5.3用for语句实现循环5.4循环的嵌套5.5用break语句和continue语句改变循环状态5.6几种循环的比较5.7程序举例主要内容5.4循环的嵌套一个循环体内又包含另一个完整的循环结构称为循环的嵌套。内嵌的循环中还可以嵌套循环,这就是多层循环。三种循环(while循环、do-while循环和for循环)可以互相嵌套。5.4循环的嵌套下面几种都是合法的形式:(1)while()(2)do(3)for(;;){…{…{whil

2、e()dofor(;;){…}{…}{…}}while();}}while();5.4循环的嵌套(4)while()(5)for(;;)(6)do{…{…{…do{…}while()for(;;){}while(){}…{…}…}}}while()习题1:求100~200间的全部素数。5.4循环的嵌套举例例题5.9输入一个数,判断是否是素数。#include #include voidmain() {intm,i,k; printf(“请输入一个整数:”); scanf(“%d”,&m); k=(

3、int)sqrt(m); for(i=2;i<=k;i++) if(m%i==0)break; if(i>k)printf(“%d是一个素数。”,m); elseprintf(“%d不是一个素数。",m); }#include#includevoidmain(){intm,k,i,n=0;for(m=101;m<=200;m=m+2){k=sqrt(m);for(i=2;i<=k;i++)if(m%i==0)break;if(i>=k+1){printf("%d",m);n=n+1;}if

4、(n%10==0)printf("");}printf("");}补充例题:编写程序输出九九乘法表。补充例题:编写程序输出九九乘法表。#includevoidmain(){inti,j;for(i=1;i<=9;i++){for(j=1;j<=i;j++)printf("%d*%d=%d",i,j,i*j);printf("");}}编写程序解百鸡问题:100元钱买100只鸡,公鸡每只5元,母鸡每只3元,小鸡3只1元,问公鸡、母鸡、小鸡各多少只?#includevoidmain(){

5、intx,y;for(x=1;x<=100;x++)for(y=1;y<=100;y++)if(15*x+9*y+(100-x-y)==300)printf("%d,%d,%d",x,y,100-x-y);}5.6几种循环的比较(1)三种循环都可以用来处理同一问题,一般情况下它们可以互相代替。(2)在while循环和do-while循环中,只在while后面的括号内指定循环条件,因此为了使循环能正常结束,应在循环体中包含使循环趋于结束的语句(如i++,或i=i+1等)。5.6几种循环的比较for循环可以在表达式3中包含使循环趋

6、于结束的操作。因此for语句的功能更强,凡用while循环能完成的,用for循环都能实现。(3)用while和do-while循环时,循环变量初始化的操作应在while和do-while语句之前完成。而for语句可以在表达式1中实现循环变量的初始化。5.6几种循环的比较(4)while循环、do…while循环和for循环,都可以用break语句跳出循环,用continue语句结束本次循环。有一对兔子,出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。假设所有兔子都不死,问40个月的兔子总数为多少?例题5

7、.8解题思路5.7程序举例第几个月小兔子对数中兔子对数老兔子对数兔子总数110012010131012411135212563238753513┆┆┆┆┆可以看到每个月的兔子总数依次为1,1,2,3,5,8,13…这就是有名的费波那西(Fibonacci)数列。5.7程序举例例题5.8#include voidmain() {longintf1,f2; inti; f1=1;f2=1; for(i=1;i<=20;i++) { printf("%12ld%12ld",f1,f2); if(i%2==0)print

8、f(""); f1=f1+f2; f2=f2+f1; } }程序运行结果:1123581321345589144233377610987159725844181676510946177112865746368750251213931964183

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。