- 1、本文档共54页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[高等教育]C语言课件-循环结构
4.4.2 嵌套循环 for (i = 1; i = 100; i++){ item = i ! sum = sum + item;} for(i = 1; i = 100; i++) { item = 1; for (j = 1; j = i; j++) item = item * j; sum = sum + item; } 求1!+2!+……+100!的流程图 START N 输出阶乘的和 sum=sum+item END 和sum=0 i++ Y i=100? i=1 阶乘项item=1 j=1 N Y j=i? item=item*j j++ 例4-6 源程序 #include stdio.h int main(void) { int i, j; double item, sum; /* item 存放阶乘 */ sum = 0; for(i = 1; i = 100; i++) { item = 1; /* 每次求阶乘都从1开始 */ for (j = 1; j = i; j++) /* 内层循环算出 item = i! */ item = item * j; sum = sum + item; } printf(1! + 2! + 3! + … + 100! = %e\n, sum); } 内层循环的初始化 for(i = 1; i = 100; i++) { item = 1; for (j = 1; j = i; j++) item = item * j; sum = sum + item; } 求1! + 2! + …. + 100! item = 1; for(i = 1; i = 100; i++){ item = item * i; sum = sum + item; } 求1! + 1!*2! + …… + 1!*2!*……*100! 分析嵌套循环的执行过程 for(i = 1; i = 100; i++) { item = 1; for (j = 1; j = i; j++) item = item * j; sum = sum + item; } 外层循环变量 i 的每个值。 内层循环变量 j 变化一个轮次。 内外层循环变量不能相同。 分别用 i 和 j。 for (i = 1; i = 100; i++) for (j = 1; j = i; j++) printf (%d %d\n, i, j ); 4.5 循环程序设计 循环程序的实现要点: 归纳出哪些操作需要反复执行? 循环体 这些操作在什么情况下重复执行? 循环条件 选用合适的循环语句 for, while, do-while 循环具体实现时考虑(循环条件): 事先给定循环次数,首选for。 通过其他条件控制循环,考虑while或do-while。 流程图 例4-7 输入n(0)个学生的成绩,求最高分(for) START 输出max max=mark END 输入学生个数-n(0) Y maxmark? 输入第一个学生成绩-mark-max i=1 N Y in? i++ 输入下一个学生成绩-mark N for循环 #include stdio.h int main(void) { int i, mark, max, n; printf(Enter n: ); scanf (%d, n); printf(Enter %d marks: , n); scanf (%d, mark); /*读入第一个成绩 */ max = mark; /*假设第一个成绩是最高分 */ for (i = 1; i n; i++ ){ scanf (%d, mark); if (max mark) max = mark; } printf(Max = %d\n, max); return 0; } Enter n: 0 Enter n: 5 Enter 5 maks:67 88 73 54 82 Max = 88 流程图 例4-7 输入一批学生的成绩,求最高分(while)
文档评论(0)