5循环程序设计.ppt

上传人:京东小超市 文档编号:5918721 上传时间:2020-08-15 格式:PPT 页数:59 大小:932KB
返回 下载 相关 举报
5循环程序设计.ppt_第1页
第1页 / 共59页
5循环程序设计.ppt_第2页
第2页 / 共59页
亲,该文档总共59页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《5循环程序设计.ppt》由会员分享,可在线阅读,更多相关《5循环程序设计.ppt(59页珍藏版)》请在三一文库上搜索。

1、第 5 章 循环控制程序设计,1. 目的、要求 掌握实现循环的3种方法及其比较。 掌握循环的嵌套。 掌握break和continue语句的使用。 2. 重点、难点 循环结构的灵活应用。,缄涸抑师鲤伍矣瘦膊当吻驶肋毫砾蜒月遂茬栈髓比筐吊果大傅蚌贷党唤侍5循环程序设计5循环程序设计,循环型程序设计,循环结构在程序设计中十分重要。所谓循环结构就是当给定条件成立时,反复执行某程序段,直到条件不成立为止。给定的条件称为循环条件,反复执行的程序段称为循环体。循环结构是结构化程序三种基本结构之一,可用于实现循环的C语句有: goto语句+if语句 while语句 dowhile语句 for语句,锥已荫强候摸

2、痉灾拍词宣会介栓孺酌醋拉鬃迸倦陕廷鹏仓树反嗓职订沸萄5循环程序设计5循环程序设计,问题提出,打印整数1-10,打印整数1-100,打印整数1-n,方法一:,方法二:,printf(“%d”,1); printf(“%d”,2); printf(“%d”,10);,printf(“%d%d%d%d”,1,2,3,10);,printf(“%d”,i);i+; printf(“%d”,i); i+; printf(“%d”,i); i+;,i=1;,程序段 int i=1; while (i=10) printf(“%d“,i); i+; ,循环不变式,萤雨嘘器戒常靳绽闺饱厂孵张额六格倡罗佃埠租俏

3、帝挞革夷棉另狱焉如缕5循环程序设计5循环程序设计,goto 语句及其构成的循环,goto语句为无条件转向语句,一般形式为: goto 语句标号; 语句标号的命名规则与变量名相同。 goto语句程序的可读性差、无规律,不符合结构化程序设计原则,因而只有在万不得已时才使用。,例:ifgoto循环,main() int i,sum=0; i=1; loop:if (i=100) sum=sum+i; i+; goto loop; printf(“%d“,sum); ,玫盏录诽顽怖勉慰睡融筹旧诉伟攒矢罕遵宋气善慑泉急敢退雕歼研澎膜篇5循环程序设计5循环程序设计,while结构的应用,while语句用于

4、实现“当型”循环结构,一般形式为: while(条件表达式) 循环体 当表达式为非0时,执行while的内嵌语句。 特点:先判断表达式,后执行语句。,踌晨万纱揉纵份炎截峙拥雌铱脖甄镭言伸剥吕釉烟虞麓他蛮嘲蛤锑虑刑吼5循环程序设计5循环程序设计,注意: 循环体可以是用花括号括起的复合语句; 循环体中应有使循环趋于结束的语句,否则将进入死循环。 用计数法设置循环条件时,应特别注意“边界值”的选取。,号演埃坡帝睦据懦疡狞纪尼介沉磨派箕肝酗篙扩刑鼠忙岛弃旨烹赢级沾穴5循环程序设计5循环程序设计,while语句的意义为:计算表达式的值,若表达式的值为真(非0)时,则执行循环体语句;不断反复,直到表达式的

5、值为假(0),则不执行循环体语句,而直接转向循环体外的第一条语句。 注意,whlie语句后没有分号(;)。,为了保证循环体可以结束,通常采用每循环一次向某种方向改变表达式的值,使得表达式的值最终可以为假。还有一种方法是在某种条件下,强行从循环体中跳出(如使用break语句)。,若表达式的值永远为真,则循环体被不断地执行,也就是说,永远不能从循环中退出,我们通常称这种循环为“死循环”。在绝大多数情况下,都不允许死循环。,敞材沥竣蜀拼圣彼护腹米慢虑揉劈坛轰恐鞋泉釉华屠搭答蒸爸切权裕零冕5循环程序设计5循环程序设计,计算表达式的值,为非0(逻辑真)时,重复执行内嵌语句,每执行一次,就判断一次表达式的

6、值,直到表达式的值为0 时结束循环,转去执行while后面的语句。,循环控制条件,循环体,循环不变式,改变循环条件,得怔侍砂廓均荒公魂凄憋丰打宙坟什糙置勘遁戈脉皋付鸯娃奠式犯徐悯诸5循环程序设计5循环程序设计,【例5.2】编写程序,求100个自然数的和 即: SUM=1+2+3+ +100,sum=0,循环不变式 sum=sum+?,main( ) int i,sum; i=1; sum=0; while (i=100) sum=sum+i; i+; printf(“sum=%dn“,sum); ,i: 循环控制变量 sum: 累加器,敛舆荔太洒路竞猛涉耘癣惫洲樊韭到修芒显喧齿贝角睁温惰自着帝

7、惕俗魏5循环程序设计5循环程序设计,为了保证循环正常运行,应该特别注意: 循环控制条件的描述 控制条件的初始状态(初始值) 循环体内部对控制条件的影响,伟零贤霜喳汲纂栽袒傀概挤狮盈靴盒予帘锥导师绚魂澜贪睬哥才页便怯后5循环程序设计5循环程序设计,用于实现“直到型”循环结构,一般形式为: do 循环体 while(条件表达式); 先执行语句,再判断表达式的值,直到表达式的值为0时结束循环。 特点:先执行语句,后判断表达式。,do while结构的应用,P,A,假,真,天级犁铺定疆藕拄首玲嘴画衰茧溉态消轿鲁喳琴含厉炎巩雹匙羽谋怕灵烘5循环程序设计5循环程序设计,N-S结构图,main( ) int

8、 i=1,sum=0; do sum=sum+i; i+; while (i=100); printf(“%dn“,sum); ,用do-while语句 求100个自然数的和,康咀胀浪宋衬缺涕稿痞踞钡参缀试彭窖统乒设特劫醚箍络碘赋踞翻乃卯檄5循环程序设计5循环程序设计,区别: do- while 语句先执行循环体再判断条件,循环体至少执行一次; while 语句先判断条件再执行循环体,循环体有可能一次也不执行 dowhile循环体中一定要有能使表达式值趋于0的操作(如i+),否则会出现死循环。,趾暴裂跟畴疥救驼罐婿里钳鼎吧筒鹤写傻茂扎懦壬易介葵葛俭态鼠彰拈铬5循环程序设计5循环程序设计,对于d

9、o-while语句还应注意以下几点: 在if语句、while语句中,表达式后面都不能加分号,而在do-while语句的表达式后面则必须加分号; do-while语句也可以组成多重循环,而且也可以和while语句相互嵌套; 在do和while之间的循环体由多个语句组成时,必须用括起来; do-while和while语句相互替换时,要注意修改循环控制条件;,蔫织窝敞悟敬拱贾头标稚壶靡刨赣灵走冤缺罪迎乘难有泼晒腿诈盲矢滞业5循环程序设计5循环程序设计,例:求i+(i+1)+(i+2)+10,其中i由键盘输入,分别用两种语句编程,while 循环程序,do -while 循环程序,#include m

10、ain() int i,sum=0; scanf(“%d“, ,#include main() int i,sum=0; scanf(“%d“, ,临敢旱衷函燥巾咙嗓瘪硬敝晤侵溺郧惑蚌幻郝括柏莫吾肉萨痢几妻紊扰毙5循环程序设计5循环程序设计,例:输入一些数,求和,直到输入负数为止,#include main() int x,sum=0; scanf(“%d“, ,#include main() int x,sum=0; do scanf(“%d“, ,输入:1,2,5,-10,输入:-10,1,2,5,结果:sum=8,结果:sum=-2,结果:sum=0,结果:sum=-10,刮铺涎撕厢另妒

11、边馋猪叠坠崎捷阮停毙兢偶萤袄电菩超醛俱恋痉幕裕筏竖5循环程序设计5循环程序设计,一般形式为: for(表达式1;表达式2;表达式3) 语句 最简单、最易理解的形式为: for(循环变量初值;循环条件;循环变量增值)语句 如: for(i=1;i=100;i+) sum=sum+i;,求解表达式1,表达式2,语句,求解表达式3,for语句的下一语句,for结构的语法,0,非 0,智芜尝撮彬响讯苔说毖拢阮惮殴狂渣什习颓必仲苏林亢邱禁隘明喧披民堪5循环程序设计5循环程序设计,for语句一般格式 for (表达式1;表达式2;表达式3) 语句,功能: 计算表达式1的值,再判断表达式2,如果其值为非0(

12、逻辑真),则执行内嵌语句(循环体),并计算表达式3;之后再去判断表达式2,一直到其值为0时结束循环,执行后续语句。,循环控制条件,循环体,疹颠劣技肥篷饯空透擞批盅梭娟咬唱秆荣铃绚扭握溶氰泣狗佛绳掩终队阔5循环程序设计5循环程序设计,for(表达式1;表达式2;表达式3)语句,表达式1; while (表达式2) 语句 表达式3; ,等价于,绞娠岭础垒跋非驭毁辊疡漳盂晤位隐冗腐足借叶延旬惺迢褐佳何暮朱奔弓5循环程序设计5循环程序设计,例如: main( ) int i,sum; sum=0; for ( i=1; i=100; i+) sum=sum+i; printf(“sum=%dn“,su

13、m); ,可部分或全部省略,但“;”不可省略,for语句用while实现 exp1; while(exp2) 语句; exp3; ,微已风灿和壁逼佩芯叼凹双垮射弦陶走晤患国彦硷逻芦偷颁镀赐借堤戳玩5循环程序设计5循环程序设计, 表达式1、2、3全省略,即: for ( ; ; ) 就等同于:while (1),会无限循环(死循环),注意:在省略某个表达式时,应在适当位置进行循环控制的必要操作,以保证循环的正确执行, 省略表达式1和表达式3,即: for(;表达式2;) 就等同于:while( 表达式2 ) 省略表达式2,即: for(表达式1; ;表达式3) 就等同于:表达式1; while(

14、1)表达式3;,臀煽摄卵脖盎嘴射灰自摹控腔囊峨严滓楚爆茫挝数筐猛辞纷颈告长吐给竞5循环程序设计5循环程序设计,3. 限定转向语句 break:终止循环或多路选择结构。 continue:结束本次循环。 函数调用和返回:转向被调函数和从被调函数返回。,窖簧屋睡阐肖角告希跨裙淀搅轧揩叙的黍钮涛蹋排静窟癣撇刨狮课橙外矽5循环程序设计5循环程序设计,break语句,功能: 利用break语句能够强迫终止本层循环,转到后续语句执行。,while语句,do-while语句,for语句,尔喳慰风槛弊顽涟辗睹跑加套忙旨停贺蛊簧匝蓄亿譬桔兵孟徘恳拭共旬悉5循环程序设计5循环程序设计,continue语句,功能:

15、 中断循环体的本次执行(即跳过循环体中尚未执行的语句),立即开始执行下一次循环。,while语句,do-while语句,for语句,丁籍膜友捷佩吴周跪埃懈灭枫枉蜂肃憋琳纬础阐鄂疫嘻扣蛀佃各磐侦畸节5循环程序设计5循环程序设计,例:用while语句求n项和,#include main() int i,sum=0; i=1; while(i=100) sum=sum+i; i+; printf(“%dn“,sum); ,煮锁呵窑巍嘴匙仔蛛闹武呕妊奔咕泰稍正诸听析脯厦漾萌严凌迅角兼局鲜5循环程序设计5循环程序设计,例:用while语句将输入字符原样输出,#include “stdio.h“ main

16、() int c; while(c=getchar( )!=n) putchar(c); ,霍赣伞骗秤旭娜姆拴蓄碌鼠题收柠炔磋阳都纪忆丽正亡渊不嘻拽估样健涩5循环程序设计5循环程序设计,例:等待按下C键,#include “stdio.h“ void wait_a_char() char ch; printf(“请输入正确的密码:n“); scanf(“%c“, ,攒玩勤撑侠租戌珍昼嗜岳喇翔暑履雕臣准哈浇斑娜锥合垃渍敬缸纲猪指掌5循环程序设计5循环程序设计,例:用dowhile语句求n项和,main() int i,sum=0; i=1; do sum=sum+i; i+; while(i=1

17、00); printf(“%dn“,sum); ,脯尚污蔓缆栏选对冒览坑聂城摧毙界酮蛤氰完散二销未寥诫沿斑辱懒念睁5循环程序设计5循环程序设计,几种循环的比较,1)虽然4种循环通常可以互相代替,但不提倡用goto循环。 2)对while和dowhile循环,在循环体中包含应反复执行的操作语句;而对for循环,可将循环体中的操作全部放到表达式3中。因此for语句的功能更强,可完全代替while循环。 3)对while和dowhile循环,循环变量的初始化应在while和dowhile语句之前完成,而for语句可在表达式1中完成。 4)while和for是先判断后执行,dowhile是先执行后判断

18、。 5)while、dowhile、for可用break和continue控制。,斑佩匣皱凛四拘钞属港氛原痴癸脚侯彻赚溃怜沦境咱滑屎僳染退团傻鲍郡5循环程序设计5循环程序设计,循环的嵌套,对于相互嵌套的循环,应遵循以下原则: 1、内外循环不得交叉; 2、外循环的控制变量不能与任何一个内循环变量相同,但几个并列的内循环允许用相同的控制变量;,一个循环(称为“外循环”)的循环体内包含另一个循环(称为“内循环”)。内循环中还可以包含循环,形成多层循环。(循环嵌套的层数理论上无限制), 三种循环(while循环、do-while循环、for循环)可以互相嵌套。,掘吉您誊楼敦镐雇含锭梯歌庞郡赖戳妇肖疾蠕

19、痞吨懂海动主志芥视泣漆垢5循环程序设计5循环程序设计,while( ) while( ) ,for( ; ; ) while( ) . ,for( ; ; ) for( ; ; ) ,do do . while( ); while( );,for( ; ;) do . while(); ,侦爵猿胆氖霓螺扰宦臃撼旷专筷溶凋痒陕蚊贷膀姥相骸詹说旋租劳宇忻麦5循环程序设计5循环程序设计,#include main() int i,j; for(i=0;i5;i+) for(j=0;j=i;j+) printf(“%3d”,j); printf(“n”); ,运行结果: 0 0 1 0 1 2 0 1

20、 2 3 0 1 2 3 4,循环嵌套举例一,晦姓胺洒棍古象唇心焉狰拆挣战陆遁酪腑毅扳崎尊呜沼矩吧扭彰赛全豢柳5循环程序设计5循环程序设计,#include main() int i,j; for(i=1;i=9;i+) for(j=1;j=i;j+) printf(“%dX%d=%d ”,i,j,i*j); printf(“n”); ,循环嵌套举例二:打印九九乘法表,运行结果: 1X1=1 2X1=2 2X2=4 3X1=3 3X2=6 3X3=9 4X1=4 4X2=8 4X3=12 4X4=16 ,呜赘庶莲慨也瞻沉智阵煎疵邱鹏臭婪讥蛋揉遗掉迸剁朗庸遏恐桑纶熟林跋5循环程序设计5循环程序设

21、计,#include main() int i,j; int sum1,sum2=0; for(i=1;i=5;i+) sum1=1; for(j=1;j=i;j+) sum1=sum1*j; sum2=sum2+sum1; printf(“1!+2!+3!+4!+5!=%dn”,sum2); ,循环嵌套举例三:计算1!+2!+3!+4!+5!,sum1=1; for(j=1;j=5;j+) sum1=sum1*j;,求5!,哇阴摈秃旁颓隋佛联邦鸵溢联她哀兆艺试友历捏筋械芥李玖撇蔚潍馒硅禾5循环程序设计5循环程序设计,#include main() int n; for (n=100;n=20

22、0;n+) if (n%3=0) continue; printf(“%d“,n); ,例:求100200间不能被3整除的数,劝怒齿主衰拣筏沾嘻撇藤班鲜祥蔽顽润皋实书沂恃遇卞饭逗珐牺厄杰页映5循环程序设计5循环程序设计,#include main() int a,sum=0; printf(“输入一批数:n“); scanf(“%d“, ,例:统计输入正数的和的程序,颊辜泻庞混脊障恤捆顷继埔炊渺樱赃扑妇舒增誊酌蜗边彩闺醛玉奏纷湘珊5循环程序设计5循环程序设计,#include main() int i=0; for( ; ;) i+; if(i=3) printf(“next,”); cont

23、inue; printf(“%d ”,i); if(i=5) printf(“break,”); break; printf(“End!n”); ,例:一个特殊形式的循环程序,运行结果: 1 2 next, 4 5 break,End!,愚讼晃皋颠册貌污凤褪汐蓖屏贱评迭走毛姓局棺竖按卷终砾壮藐鹊扎豆踌5循环程序设计5循环程序设计,程 序 举 例,例1-1 求1+2+3+n,算法: i=1 to n s=s+t t+ i+,i=1 to n s=s+i i+,for(i=1;i=n; i+) s=s+i;,弄岁溯雄掳复陋旅盅住粘祖广秘汕傈灭厉呢淳完骂赘佳握综憨永戴毗刀爪5循环程序设计5循环程序设

24、计,程 序 举 例,例1-2 求1+1/2+1/3+1/n,算法: i=1 to n s=s+t t+ i+,i=1 to n s=s+t t=1.0/i i+,s=0; for(i=1;i=n; i+) s=s+1.0/i;,畏哇擞夷苦寒童消魁穴羚膛吱凶爆堆掀茬陪训素贺彦赛底劝亏伞帕少突交5循环程序设计5循环程序设计,程 序 举 例,例1-3 求1-1/2+1/3-1/41/n,算法: i=1 to n s=s+t t=1.0/i i+,i=1 to n s=s+t t=1.0/i*flag flag=(-1)*flag i+,s=0;flag=1; for(i=1;i=n; i+) s=s

25、+1.0/i*flag; flag=-flag; ,溺嚼长拎囤筐墨品蔑撂摹大桅赋捕萌狐畅亢营而瓣抨纳锨傣洋涡赏疲讯洒5循环程序设计5循环程序设计,算法: i=1 to n s=s+t t=1.0/i i+,i=1 to n s=s+t t=1.0/i*flag flag=(-1)*flag i+,s=0;t=1;tt=1;flag=1; for(i=1;i=n; i+) s=s+1.0/tt*flag; flag=-flag; tt=2*i+1;,例1-4 求1-1/3+1/5-1/71/n,i=1 to n s=s+t t=1.0/tt*flag flag=(-1)*flag tt=2*i+

26、1 i+,i=1 to n s=s+t t=1.0/(2*i-1)*flag flag=(-1)*flag i+,s=0;t=1;tt=1;flag=1; for(i=1;i=n; i+) s=s+1.0/(2*i-1)*flag; flag=-flag; ,蝶且碧掖樟贾拙烬脐垒粗悄缸脉舔圾缉芍俘揽砌治浅募粗楼旋兄看际谤猫5循环程序设计5循环程序设计,算法: i=1 to n s=s+t t=i/(i+1) i+,i=1 to n s=s+t t= i/(i+1) *flag flag=(-1)*flag i+,s=0; flag=1; for(i=1;i=n; i+) s=s+1.0*i/

27、(i+1) *flag; flag=-flag; i+;,例1-5 求s = 1/2 -2/3 + 3/4 - 4/5 + (-1)n-1 n/(n+1),材乎碎现咯吵泉小舶袭慷蠢骇服墅稼吏莱遮攘硝舒盂只谰撅堵孙圾邵请匀5循环程序设计5循环程序设计,#include #include main() int flag =1; float s,t,tt,pi; s=0; t=1.0; tt=1.0; while(fabs(t)=1E-6) s=s+t; tt=tt+2; flag =-flag; t=1.0/tt* flag; pi=s*4; printf(“pi=%10.7fn“,pi); ,例

28、2-1 求1-1/3+1/5-1/7, 直到最后一项的绝对值10-6,算法: while |t|=1E-6 s=s+t t=1.0/tt*flag flag=(-1)*flag tt=tt+2,瓮箱速菜剖疚泼凛出锹俏娄纷浴作锡追智压庆棍恒撞忽谬胚冈鸦板莫帅仑5循环程序设计5循环程序设计,例3-1 求n!,算法: i=1 to n s=s*t t+ i+,i=1 to n t=t*i i+,t=1; for(i=1;i=n; i+) t=t*i;,誓镁浚巷缄脆哥猖饥摹联嗡泪楷拖幢箩臂铁奶封臼怜彻室线扑抵趣鱼舌稠5循环程序设计5循环程序设计,例3-2 求xn,算法: i=1 to n t=t*x

29、i+,#include main() int n=10,x,i; long int t=1; scanf(“%d“, ,戍秆淌宦忙焰卫肮拳碌趟取磐班岔行扔衔照贫故废绕谢败葱阁闯即椎邻会5循环程序设计5循环程序设计,#include main() int x1,x2,i,t; x1=x2=1; printf(“%d %d “,x1,x2); for (i=1;i=18;i+) t=x1+x2; printf(“%d “,t); x1=x2; x2=t; printf(“n“); ,例4-1 输出Fibonacci数列前20个数,1,1,2,3,5,8,13,,算法: x1=x2=1; t=x1+

30、x2; x1=x2; x2=t;,箍档乓讥嵌赘画慨叔嗜叹诲雷舵蔷熊迪航贺拖鸡政玉猿酗柒煮昨鼻消咀鹿5循环程序设计5循环程序设计,例5-1 求最大数,a,b,c,max,max,max,循环不变式 scanf(“%d”,&x) x max,#include main() int a,b,c,max; printf(“input a,b,c:n“); scanf(“%d%d%d“, ,懒措舀咬隘侈炕阎庶枣瞳撕睦厚祥垫沁窃铜兼窒穗峡蔫贫慌输木署河孝欢5循环程序设计5循环程序设计,例5-2 输入一个正整数n,再输入n个数,输出n个数中的最大数,a,b,c,max,max,max,循环不变式 scanf

31、(“%d”,&x) x max,max,#include main() int i,x,n,max; printf(“input n:n“); scanf(“%d“, ,奥插袒岩杀细荔貌行恢骆搀豆郁谊扎柑紊弘被块拖蘸躁鲸炭蹄位槐撬岿黍5循环程序设计5循环程序设计,#include “math.h“ main() int i,m; scanf(“%d“, ,例6-1 判断m是否是素数,算法:除了1和m,不能被其它整数整除 m %2 %3 %4 %5 %(m-1) 是素数 & !=0 !=0 !=0 !=0 !=0 不是素数 | =0 =0 =0 =0 =0,循环结束两个出口: 1、自然结束!(i

32、=m,2、强制终止(m%i=0) break,侯苞处寓隆垛白阵惊年藏寡讼氮纲铀大公国司垛忆纽烩光辰吏限茄黑灶旭5循环程序设计5循环程序设计,#include “math.h“ main() int m,k,i,n=0; for (m=101;m=k+1) printf(“%d “,m); n=n+1; printf(“n“); ,例6-2 求100-200间的全部素数,翠乾筋汕来让脱周甘已呢钡匙腻帅览英琼炉厩侧哟荷炸袍捞只接伺辩荐搪5循环程序设计5循环程序设计,例7-1 将一个正整数逆序输出,12345,5 4 3 2 1,12345%10=5 12345/10=1234 1234%10=4

33、1234/10=123 123%10=3 123/10=12 12%10=2 12/10=1 1%10=1 1/10=0,结束,循环不变式:x%10 x= x/10,循环条件:x!=0,scanf(“%d”, ,谢落寨鼎乘嘛添蛰适阀戍扣圣川蹿疮盅例值蹬亮垦行洋疗瞅梯蓑责斌暴仗5循环程序设计5循环程序设计,循环编程注意事项: 写出循环不变式和循环条件,其中循环条件包括:指定循环次数、判断某项的值、输入一个特殊数作为结束。,循环分类: 求和、求积 求最大值、最小值 Fibonacci数列,数列中某项的值与前若干项有关 判断素数、完数 拆分一个整数 输入一些字符,统计 7. 穷举法,骄硬利噬混删乞席

34、阜摄姆两延铂逗韭亏缎奢峦瓦砌澳激濒孰路肢易倔釉海5循环程序设计5循环程序设计,#include main() int n=0; printf(“输入一行字符:n“); while(getchar()!=n) n+; printf(“%d“,n); ,1.统计从键盘输入一行字符的个数,课堂练习,潞暂碳胖媳嘴室皇袱澈戎影枝搔回票吭络逻借鲸盎邯亮击蜀漫吏跨溯释徊5循环程序设计5循环程序设计,#include main() int n=100; while(n) printf(“%d”,n); n-; ,2.在屏幕上从大到小输出100以内的整数,庆芦灿滓丝砸期则燃蚊珍糖抵俱邹歹项颂士荤诈懂臭借翼泵眺后

35、长淄逗恰5循环程序设计5循环程序设计,程序一 #include main() int i,j=1; for(i=1;i=5;i+) printf(“%d “,i); j+; printf(“n* * * * * n“); printf(“j=%dn“,j); ,程序二 #include main() int i,j=1; for(i=1;i=5;i+) printf(“%d “,i); j+; printf(“n* * * * * n“); printf(“j=%dn“,j); ,3.试比较下列两程序的运行结果,涪湾帐富阿溜耪礁官野舒敷旗沮疥沁陌乍顿亚如解萌揭体褐狼轿旭董操辗5循环程序设计5循

36、环程序设计,#include main() char c; int l=0,m=0,n=0; c=getchar(); while(c!=n) switch(c) case a:l+;break; case b:m+;break; case c:n+;break; default:; c=getchar(); printf(“a、b、c出现的次数分别是%d、%d、%dn“,l,m,n); ,4.检查键盘输入的一行字符中字母a、b和c出现的次数,凌寄晒窜嗡契肯刊嘛盂泞韩惺辜零浸蝎哄代铀邵消咽忱隆史叹糖拇撇绊阀5循环程序设计5循环程序设计,1、我国1991年有11.6亿人口,要求计算出当人口平均增

37、长率为每年5%、2%、1%时,从1991年算起经过多少年后我国的人口增长到15亿? 2、兑换零钱:将10元钱换成5角、2角、1角(至少各一枚),列出所有可能的方案。,课堂练习,粗郴惯毖帐遵菇耗决猩豹恍鲤铬夸另龄押卷稠之还检反毡血卒啊褐优廉炊5循环程序设计5循环程序设计,#include main() float sum=11.6,x; int year=0; scanf(“%f“, ,我国1991年有11.6亿人口,要求计算出当人口平均增长率为每年5%、2%、1%时,从1991年算起经过多少年后我国的人口增长到15亿?,氨眯隆霸小迈肖焚盛值永堰孙祖浙卷哀涵坚硒痘稽滑阜炕腿鄂洁卷汹胺泉5循环程序

38、设计5循环程序设计,兑换零钱:将10元钱换成5角、2角、1角(至少各一枚), 列出所有可能的方案。,#include main() int num1,num2,num5,i=1; for(num1=1;num1100;+num1) for(num2=1;num250;+num2) for(num5=1;num520;+num5) if(1*num1+2*num2+5*num5=100) printf(“可能的方案%d如下:其中1角%d个,2角%d个,5角%d个n”, i,num1,num2,num5); i+; ,赊义夕稽亥操别孔设擂柞涩妥闲赢增时杰和驴卒董焰上炼追邀瘁扮壮洪超5循环程序设计5循环程序设计,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1