- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第5章循环结构程序设计第1页,共26页,星期日,2025年,2月5日北京邮电大学出版社5.1while语句1.While语句的一般形式:while(表达式)语句;2.while语句的执行过程:说明:1.表达式部分可以是任意类型的表达式。2.语句部分为循环体,表示在循环条件成立时要反复执行的部分操作,可称为循环体语句。3.设计循环结构的程序时要注意让循环体执行若干次数后能够结束循环,避免出现死循环。第2页,共26页,星期日,2025年,2月5日北京邮电大学出版社例5.1分析以下程序,写出程序的执行结果。#includestdio.hmain(){inti,s;s=0;i=1;while(i=3){s=s+i;i++;}printf(s=%d,i=%d\n,s,i);}分析循环执行的过程:循环语句while执行前s=0,i=1循环条件成立第一次执行循环体后s=1,i=2循环条件仍成立第二次执行循环体后s=3,i=3循环条件仍成立第三次执行循环体后s=6,i=4循环条件不成立循环语句结束,执行下一条语句,输出结果:s=6,i=4与循环控制有关的三个要素: ①变量赋初值; ②判断循环条件; ③对变量取值的修正。第3页,共26页,星期日,2025年,2月5日北京邮电大学出版社例5.2输入全班50个学生某门课程的成绩,求他们的平均分。#includestdio.hmain(){intx,n=1; floatsum=0,average; while(n=50){scanf(%d,x);sum=sum+x;n++;}average=sum/50;printf(averag=%5.2f\n,average);}这是一个比较典型的迭代算法。所谓迭代就是不断用变量的新值来取代变量的旧值,或由变量的旧值不断递推出变量的新值的过程。迭代算法的关键因素:1.初值2.迭代方式3.迭代条件第4页,共26页,星期日,2025年,2月5日北京邮电大学出版社例5.3任意输入十个整数,找出其中的最大值。 在十个数中找最大值,可以使用“打擂台”的方式,即先将输入的第一个数作擂主,其它的数作为挑战者,擂主与挑战者之间要进行9次的较量,每次较量后的胜者将成为新擂主#includestdio.hmain(){intx,max,i;scanf(“%d”,max);/*将输入的第一个数作擂主*/i=0;while(i9)/*进行9次比较*/{scanf(%d,x);if(maxx)max=x;/*挑战者胜,成为新擂主*/i++;}printf(max=%d\n,max);}第5页,共26页,星期日,2025年,2月5日北京邮电大学出版社例5.4输入两个任意的正整数,求它们的最大公约数。#includestdio.hmain(){intm,n,r,t;scanf(%d%d,m,n);if(mn){t=m;m=n;n=t;}r=m%n;while(r!=0){m=n;n=r;r=m%n;}printf(%d\n,n);}求最大公约数可以使用“辗转相除”的方法, 例如:被除数m 除数n 余数r82 24 1024 10 410 4 22 0这仍是一个迭代算法,请找出其中的三个要素:1.初值2.迭代公式3.迭代条件第6页,共26页,星期日,2025年,2月5日北京邮电大学出版社5.2do-while语句do…while语句的一般形式: do 语句; while(表达式);2.do…while语句的执行过程:例5.5分析以下程序,写出程序的执行结果。#includestdio.hmain(){inti,s;s=0;i=1;do{s=s+i;i++;}while(i=3)printf(s=%d,i=%d\n,s,i);}第7页,共26页,星期日,2025年,2月5日北京邮电大学出版社例5.6设有一个分数数列2/1,3/2,5/3,8/5,13/8,21/13,…编程求出这个数列的前20项之和。#includestdio.hmain(
原创力文档


文档评论(0)