- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 循环结构程序设计 5.1 while语句 5.2 do-while 语句 5.3 for语句 5.4 break 语句与continue语句 5.5 循环的嵌套 5.6 用if和goto语句构成的循环结构 本章小结 5.1 while语句 1. While语句的一般形式: while(表达式) 语句; 2. while语句的执行过程: 例5.1 分析以下程序,写出程序的执行结果。 #includestdio.h main() {int i,s; s=0; i=1; while(i=3) {s=s+i; i++; } printf(s=%d,i=%d\n,s,i); } 例5.2 输入全班50个学生某门课程的成绩,求他们的平均分。 #includestdio.h main() {int x,n=1; float sum=0,average; while(n=50) {scanf(%d,x); sum=sum+x; n++; } average=sum/50; printf(averag=%5.2f\n,average); } 例5.3 任意输入十个整数,找出其中的最大值。 在十个数中找最大值,可以使用“打擂台”的方式,即先将输入的第一个数作擂主,其它的数作为挑战者,擂主与挑战者之间要进行9次的较量,每次较量后的胜者将成为新擂主 例5.4 输入两个任意的正整数,求它们的最大公约数。 5.2 do-while 语句 do…while语句的一般形式: do 语句; while(表达式); 2. do…while语句的执行过程 : 例5.6设有一个分数数列2/1,3/2,5/3,8/5,13/8,21/13, …编程求出这个数列的前20项之和。 例5.7 输入全班学生某门课程的成绩,求他们的平均分,学生人数不确定,当输入负数时表示输入过程的结束。 #includestdio.h main() {int x,n=0; float sum=0,average; scanf(%d,x); do { sum=sum+(float)x; n++; scanf(%d,x); }while(x=0); average=sum/n; printf(averag=%5.2f\n,average); } 5.3 for语句 1.for语句的一般形式为: for(表达式1;表达式2;表达式3) 语句; 2. for语句的执行过程 : 例5.8 分析以下程序,写出程序的执行结果。 #includestdio.h main() {int i,s; s=0; for(i=1;i=3;i++) s=s+i; printf(s=%d,i=%d\n,s,i); } 执行结果为: s=6,i=4 例5.10 输出Fibonacci数列1,1,2,3,5,8,13……的前20项,要求每输出5项后换行。 例5.11 任意输入一串大写字母,将它们转换成小写字母后输出。 #include stdio.h main() {int i; char c; for(i=1;(c=getchar())!=\n;i++) putchar(c+32); } #include stdio.h main() { char c; for(;(c=getchar())!=\n;) putchar(c+32); } 5.4 break 语句与continue语句 5.4.1 break语句 break语句的一般形式为: break; 注意: 1.break语句不能用于循环语句和switch语句之外的任何其它语句中。 2.在循环语句中,通常是将break语句与if语句或switch语句结合使用,即在一定的条件下用break语句跳出循环体,结束循环。 例5.13 判断一个任意输入的正整数m是否为素数。 #include stdio.h #include math.h main() {int m,i,k; scanf(%d,m); k=sqrt(m); for(i=2;i=k;i++) if(m%i==0) break; if(i=k+1) printf(%d is a prime number.\n,m); else printf(%d is not a prime number.\n,m); } 例5.15 试写出以下程序的执行结果。 #include stdio.h main() {int i,s=0; i=1; while(i10) {s=s+i; if(
您可能关注的文档
最近下载
- 最新台球室合伙经营合同范本(标准版).doc
- 量子力学基础(西安交通大学)中国大学MOOC慕课章节测验答案.pdf
- 健康管理职业导论情境五 任务十五 社区卫生服务中心参访.pptx VIP
- 教学能力比赛-教学实施报告(基础会计).pdf
- 2022年云南中烟工业公司招聘考试试题真题及答案.docx VIP
- 健康管理职业导论情境四 任务十四 健康随访及相关工具的应用.pptx VIP
- 健康管理职业导论情境四 任务十三 心理指导.pptx VIP
- 新疆达坂城抽水蓄能电站环境影响报告书.pdf VIP
- 健康管理职业导论情境四 任务十二 戒烟限酒指导.pptx VIP
- 清华大学104页《DeepSeek:从入门到精通》.pdf
文档评论(0)