- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言 5章
* 第五章 循环结构程序设计 5.1 为什么使用循环 5.2 while语句与do…while语句 5.3 for语句实现循环 5.4 几种循环的比较 5.5 多重循环(嵌套循环) 5.6 break和continue语句 5.7 选择结构程序设计举例 §5.1 为什么使用循环 循环是有规律的重复操作。可以将复杂问题分解为简单的操作过程,程序只需对简单过程描述,这些过程的多次重复就可完成对问题的求解。 例:求1+2+3+…+100的和。 算法1: 直接写出算式 sum=1+2+3+4+5+…+100 算法2:考虑到1+2+3+…+100可以改写为: (((1+2)+3)+…+100),则有 S1:p1=0+1; S2: p2=p1+2; … S100: p100=p99+100 ,结果在p100里。 算法3:用变量i存放加数,变量p存放上一步的和。那么每一步都可以写成:p+i,然后把p+i的和存入p,即每步都是p=p+i。 S0: p=0,i=1 S1: p=p+i, i=i+1 S2: p=p+i, i=i+1 S3: p=p+i, i=i+1 … S100: p=p+i, i=i+1 算法4:在上面的算法基础上采用循环功能实现。 S0: p=0,i=1(循环初值) S1: p=p+i, i=i+1(循环体) S2: 如果i小于或等于100,重复执行步骤S1及S2;否则,算法结束(循环控制)。 那么p中的值就是1+2+…+100的值。 循环变量的初始值 循环进入条件 循环体 循环变量的增值 循环的基本要素 循环变量的初值 满足条件则执行循环体 重复执行的语句 循环变量的改变,进一步测试条件 while循环 1. 格式:while(表达式) 循环体 2. 功能:先判断表达式的值,若为非零,重复执行循环体语句,再判断…直到表达式的值为零,退出循环体。 即:测试---执行--测试--执行-- §5.2 while语句与do -while语句 while (条件) {语句组} main ( ) { int s,n ; s=0 ; n=1; while(n=100) { s=s+n ; n++; } printf(“%d\n”, s); } 100 (1)当循环体中语句多于一条时,用{ },否则,循环只对第一个;起作用. (2)循环体内部必须有实现对循环变量增值的语句,否则,易出现“死循环”. (3) 条件表达式要有括号,后面不加分号. (4) 注意条件的边界值. 例题:求 1+2+3…+n=10000的最大的n。 main( ) { int a,k; a=k=0; while(a=10000) { ++k; a+=k; } printf(“1+2+3…..+%d=%d\n”,k-1,a-k); } 3.说明: 例: 一个百万富翁遇见一个陌生人,达成换钱的协议:陌生 人说:“第一天我给你10万元,你只需给我一分钱;第二天 我依然给你10万元,你只需给我二分钱;……以后你每天给我的钱数是前一天的二倍,直到满30天”,富翁很高兴,欣然同意了。请你编程计算一下,30天后每人各得多少钱? 分析:设 fu: 富翁得到的钱的总数; mo:陌生人得到的钱的总数; t : 陌生人每天得到的钱数; 第一天:fu=100000.0, t=0.01, mo=0.01 循环:2~30天 fu=fu+100000.0; t=2*t ; mo=mo + t ; main( ) { int i=1; float fu, mo, t ; fu=100000.0; mo=0.01; t=0.01; while (i30) { i + +; fu=fu+100000.0; t = 2*t ; mo=mo+t ; } printf(The rich mans money=%f\n,fu); printf(The strangers money=%f\m,mo); } 程序如下 do 语句 while (条件); 1. 格式:do 循环体 while(表达式); 2. 功能:先执行循环体,再判断表达式的值,若为非零,重复执行循环体语句,再判断…….直到表达式的值为零,退出循
您可能关注的文档
最近下载
- T-CAMDI 033—2020 医疗器械包装材料的生物学评价指南.pdf VIP
- 专题01:新闻作品-2023-2024学年八年级语文上册单元主题阅读(统编版)(原卷版).docx VIP
- DB45∕T 2094-2019 黄金百香果栽培技术规程.docx VIP
- DB510100T 181.5-2015 厂务公开规范 第5部分:事业单位 .docx VIP
- 人教版道德与法治三年级上册第5课《走近科学家》课件.pptx VIP
- 火力发电工程质量监督检查标准化清单.pdf VIP
- 百香果栽培技术规程.docx VIP
- 公安招考心理测试试题.pdf VIP
- JTG 5220-2020 公路养护工程质量检验评定标准 第一册 土建工程.docx VIP
- 函数图像的切线问题.docx VIP
文档评论(0)