C语言程序设计基础 作者 马华 李玉娟 第4章 循环结构程.pptVIP

C语言程序设计基础 作者 马华 李玉娟 第4章 循环结构程.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
学习目标 掌握while语句的格式和执行流程 掌握do_while语句的格式和执行流程 掌握for语句的格式和执行流程 掌握多重循环的格式和执行流程 掌握break、continue语句的作用 在线教务辅导网: 教材其余课件及动画素材请查阅在线教务辅导网 QQ:349134187 或者直接输入下面地址: 4.1 蜡烛燃烧之谜——while语句 4.2 口令程序——do-while语句 4.3 阶乘问题——for语句 4.4 杨辉三角形问题——多重循环 4.5 综合应用 苏联著名数学家R.H.别莱利曼在他的书中记录了一道题目:蜡烛燃烧之谜。题目是这样的: 房间里电灯突然熄灭:保险丝烧断了!我点燃了书桌上备用的两支蜡烛,在烛光下继续工作,直到电灯修好。第二天,需要确定昨晚断电共有多长时间。我当时没有注意昨晚断电的时间,也没有注意什么时间来的电。我也不知道蜡烛的原始长度。 我只记得两支蜡烛是一样长的,但粗细不同,其中粗的一支能用5小时(完全用完),细的一支能用4小时。两支蜡烛都是经我点燃的新烛。我没有找到蜡烛的剩余部分,家里人把它扔掉了。 “残烛几乎都烧光了,不值得保留”。家里人这样回答。 “你还记得残余部分有多长吗?” “两支残烛不一样。一支残烛的长度等于另一支的4倍。” 我无法知道得更多了,只好根据以上资料,推算出停电的时间。 格式1: while(循环条件) 循环体; 格式2: while(循环条件) { 循环体; } 执行流程 #include stdio.h int main(void) { int j=1,sum=0; while(j=100) { sum=sum+j; j++; } printf(sum=%d\n,sum); return 0; } 变量名 作用 类型 值 x 燃烧时间 float 从0递增 a 剩余粗烛长度 float 从1到1-x/5 b 剩余细粗长度 float 从4到1-x/4 表4-2 变量表 定义double型变量x=0,a,b; a=1-x/5;b=1-x/4; 输出x的值 x=x+0.0001; a=1-x/5; b=1-x/4; a4*b 流程图 #include stdio.h int main(void) { double x=0,a,b; a=1-x/5; b=1-x/4; while(a4*b) { x=x+0.0001; a=1-x/5; b=1-x/4; } printf(停电时间:%f小时。\n, x); return 0; } 问题描述: 用户进入某系统,有3次键盘回答口令的机会。3次中任何一次回答正确均可进入系统(显示“You are wellcome!”),否则不能进入系统(显示“Sorry!”)。 (本例设口令是6位自然数123456) 涉及知识点 do-while语句(直到型循环),break语句。 格式: do { 循环体; } while(循环条件); 循环体 循环条件 执行过程 break语句 格式:break; 功能:break语句放在switch 语句或循环体中可以立即终止本循环的执行,而转去执行循环结构的下一语句处。 说明: break语句只用于循环语句或switch语句中。 循环语句可以嵌套使用,break语句只能跳出(终止)其所在的循环,而不能一下子跳出多层循环。 #include stdio.h int main(void) { char ch; int sum=0; printf(Input 1 line characters:\n); while(1) { ch=getchar(); if(ch==\n) break; if(ch=Ach=Z) sum++; } printf(Upper characters have:%d\n,sum); return 0; } continue语句 格式:continue; 功能:结束本次循环。即跳过本层循环体中余下尚未执行的语句,接着再一次进行循环条件的判定。 说明:执行continue语句并没有使整个循环终止。 #includestdio.h int main (void) { int sum=0,i; char ch; for(i=0;i30;i++) { ch=getchar(); if(ch0||ch9) continue; /*终止本轮循环,但未跳出循环结构*/ sum++; }

您可能关注的文档

文档评论(0)

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档