第8讲循环结构选读.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八讲 循环结构 2 第八讲 循环结构 while语句 do-while语句 for语句 跳转语句 break语句 continue语句 goto语句 程序设计举例 C语言程序设计 3 while循环 while循环 当某个条件一直为真时重复执行某个动作。 举例:购物 … while 购物单上还有商品 购买下一件商品,并且把它从清单上划掉 … 如果条件“购物单上还有商品”成立时,就执行动作“购买下一件商品,并且把它从清单上划掉”; 如果该条件一直成立,这个动作就会重复执行; 最终(该买的商品都买到),即该条件不成立,循环过程就会终止,程序将执行这个循环结构之后的第一条语句。 循环结构 4 While循环结构 while语句 while (条件表达式) 循环体; C语言代码举例: 循环结构 int product=2; while (product=10) product=2*product; 可以是两种语句 单语句 复合语句 while 循环结构是单入/单出结构 5 计数器控制的循环 计数器控制的循环 循环重复执行,直到计数器达到一个特定的值。 确定循环,即循环执行的次数是确定的。 举例 问题 1个班有10个学生,参加了一次考试,成绩(0~100内的整数)已知。计算这次考试的班级平均成绩。 分析与设计 输入每个学生的成绩,累计总成绩,计算平均分,显示结果。 采用计数器控制的循环,重复执行操作: 输入一个学生的成绩。 就进行累加。 循环结构 6 计数器控制的循环 设计方法:自上而下,逐步求精 算法的顶部(描述程序整体功能) 计算本次考试的班级平均分 划分成一系列较小的任务 初始化变量 输入考试的分数,求分数总和,并计数(统计分数个数) 计算出最后结果并显示班级平均分 循环结构 7 计数器控制的循环 进一步细化算法 初始化 输入考试的分数,求分数总和,并计数 计算出最后结果并显示班级平均分 循环结构 设置总分(total)为0 设置分数计数器(counter)为0 While 分数计数器 10 输入下一个分数(grade) 把该分数加到总分上 分数计数器增1 班级平均分(average)为总分除以10 显示班级平均分 8 计数器控制的循环 源代码分析(cw0701.c) 循环结构 #include stdio.h void main() { int counter, grade, total, average; total=0; counter=0; while (counter 10) { printf(Enter grade:); scanf(%d, grade); total+=grade; counter++; } average=total/10; printf(Class average is %d\n, average); } 初始化 (initialization) 执行循环 (execute loop) 输入 累加 结束 (termination) 最后的计算 输出结果 9 计数器控制的循环 运行(cw0701.c) 一次运行结果 循环结构 Enter grade:60 Enter grade:70 Enter grade:65 Enter grade:76 Enter grade:73 Enter grade:56 Enter grade:78 Enter grade:64 Enter grade:89 Enter grade:76 Class average is 70 10 标记控制的循环 举例 问题:编写一个班级平均分计算程序,每次执行该程序,都能够处理任意数量的学生分数。 思考:学生人数未知,何时结束输入? 标记控制的循环 使用标记(flag)指定“数据输入的结束” 即当用户输入标记值时,循环结束 其他名称:信号值(signal value),哨兵(sentinel) 标记值不应与正常的用户输入混淆 本例可以采用 -1 但同时标记值也是合法的输入 不确定的循环,即循环次数未知。 循环结构 11 标记控制的循环 算法设计 算法的顶部 计算本次考试的班级平均分 细化 初始化变量 输入考试的分数,求分数总和,并计数(统计分数个数) 计算并显示班级平均分 循环结构 12 标记控制的循环 进一步细化 初始化变量 输入考试的分数,求分数总和,并计数(计算分数个数) 循环结构 设置总分(total)为0 设置计数器(counter)(分数的个数)为0 输入第一个分数(grade)(可能是标记值) While 输入的分数不是标记值 把当前分数加到总分中 计数器加1 输入下一个分数(可能是标记值)

文档评论(0)

502992 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档