




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2020 2 20 1 第5章循环结构程序设计 教学目的 掌握for break与continue语句 循环结构程序设计 了解while语句 do while语句等 2020 2 20 2 教学内容 5 1循环语句概述5 2 for语句和while语句5 3直到型循环do while语句5 4 break语句与continue语句5 5 循环结构程序设计本章要点本章作业与上机实践 2020 2 20 3 5 1循环语句概述 C语言提供了3条循环语句 1 for语句 2 当型循环语句while 3 直到型循环语句do while 从功能上说 while可完全被for语句代替 2020 2 20 4 说明 关于goto语句结构化程序设计方法 主张限制使用goto语句 因为滥用goto语句 将会导致程序结构无规律 可读性差 返回 2020 2 20 5 5 2 for语句和while语句 在3条循环语句中 for语句最为灵活 不仅可用于循环次数已经确定的情况 也可用于循环次数虽不确定 但给出了循环继续条件的情况 案例5 2 求1 100的累计和 2020 2 20 6 include stdio h include conio h voidmain inti sum 0 for i 1 i 100 i sum i 累加 printf sum d n sum getch 2020 2 20 7 1 for语句的一般格式for 循环变量赋初值 循环条件 循环变量增值 循环体 表达式可以部分或全部缺省 但其间的分号不能省略 仅有1条语句 可缺省大括号 2020 2 20 8 2 for语句的执行流程 2020 2 20 9 1 求解 循环变量赋初值 表达式 2 求解 循环条件 表达式 循环条件表达式 3 执行循环体语句组 并求解 循环变量增值 表达式 然后转向 2 4 执行for语句的下一条语句 非0 执行 3 0 转至 4 2020 2 20 10 案例5 3 求n的阶乘n n 1 2 n include stdio h include conio h voidmain inti n longfact 1 初始化累乘器fact为1 printf Inputn scanf d 2020 2 20 11 程序运行情况如下 Inputn 5 5 120 2020 2 20 12 3 说明 1 循环变量赋初值 表达式 也可以是与此无关的其它表达式 如逗号表达式 例如 for sum 0 i 100 i sum i for sum 0 i 1 i 100 i sum i 2 循环条件 表达式 除关系 逻辑 表达式外 也允许是数值 字符 表达式 2020 2 20 13 3 循环体 仅由1条语句 简单或复合 构成 例如 for i 1 i 100 i sum i for i 1 i n i fact i for 循环体为空语句 2020 2 20 14 4 while语句 1 一般格式 while 循环条件 循环体 2 执行流程 2020 2 20 15 1 求解 循环条件 表达式 如果其值为非0 转2 否则 转3 2 执行循环体语句组 然后转1 3 执行while语句的下一条 思考 从执行流程上看 while与for的关系 参考 while是for的一种简化形式 缺省 循环变量赋初值 和 循环变量增值 表达式 2020 2 20 16 案例5 4 用while语句求1 100的累计和 include stdio h include conio h voidmain inti 1 sum 0 while i 100 sum i 实现累加 i 循环控制变量i增1 printf sum d n sum getch 思考 对于计数循环 while和for 哪个更简洁 2020 2 20 17 5 循环嵌套 1 循环嵌套 循环体内 又包含另一个完整的循环结构 2 for语句和while语句允许嵌套 do while语句也不例外 返回 2020 2 20 18 5 3直到型循环do while语句 1 一般格式do 循环体 while 循环条件 2 执行流程 右图 分号不能缺 2020 2 20 19 1 执行循环体语句组 2 计算 循环条件 表达式 如果为非0 真 则转向 1 继续执行 否则 转向 3 3 执行do while的下一条语句 特点 先执行 后判断 3 适用环境 先执行1次循环体 再判断条件是否成立的情况 除此之外 do while语句能实现的 for语句也能实现 而且更简洁 2020 2 20 20 案例5 5 用do while语句求解1 100的累计和 include stdio h include conio h voidmain inti 1 sum 0 do sum i i while i 100 循环条件 i 100 printf sum d n sum getch 返回 2020 2 20 21 5 4 break语句与continue语句 1 break语句 1 格式 break 2 功能 强行结束循环 转向执行循环语句的下一条 2020 2 20 22 2 continue语句 1 格式 continue 2 功能 跳过循环体其余语句 转向计算 循环变量增值 表达式 for循环 或者转向 循环条件 的判定 while和do while循环 2020 2 20 23 2020 2 20 24 2020 2 20 25 2020 2 20 26 3 说明 1 break能用于循环语句和switch语句中 continue只能用于循环语句中 2 循环嵌套时 break和continue只影响包含它们的最内层循环 与外层循环无关 返回 2020 2 20 27 5 5 循环结构程序设计 案例5 6 求Fibonacci数列的前40个数 数列生成方法 F1 1 F2 1 Fn Fn 1 Fn 2 n 3 即从第3个数开始 每个数等于前2个数之和 数据结构 1 设置2个简单变量f1 f2 2 设置40个简单变量f1 f2 f40 3 设置一个数组f 40 2020 2 20 28 算法设计要点 f1 f2 f3 f1不再使用 所以可以用f1来存储f3的值 即f1 f2 f3 f1 f2 f3 f1 f4 f2不再使用 所以可以用f2来存储f4的值 即f2 f3 f1 f4 f2 2020 2 20 29 include stdio h include conio h voidmain longintf1 1 f2 1 inti 1 for i 20 i printf 15ld 15ld f1 f2 if i 2 0 printf n f1 f2 f2 f1 计算下2个数 getch 为什么不是40 条件成立的含义 2020 2 20 30 案例5 7 输出10 100之间的全部素数 n是素数的条件 除1和n之外 不能被2 n 1 之间的任何整数整除 算法设计要点 1 判断n是否是素数涉及数n能否被另一个数m 2 n 1 整除 可通过判断它们整除的余数是否为0来实现 2 在判断某数n是否是素数的算法外面 再套一个for循环即可 2020 2 20 31 include stdio h include conio h voidmain intn 11 m counter 0 for n n n是素数 printf 6d n 输出 counter 计数器加1 if counter 10 0 输出10个数 printf n 换1行 getch 为什么从11开始 增量为2有什么好处 2020 2 20 32 案例5 8 加 减 乘 除和求余数运算练习程序 第3版 对程序功能的基本要求如下 1 使用菜单驱动 2 随机产生运算所需的2个操作数 0 99 3 程序自动判断用户的计算结果是否正确 在上一章中 实现了上述基本要求 但存在一个问题 运行1次 只能进行1种运算的1次练习 如果想继续练习 只能重新运行 显然 这样做很麻烦 在本案例中 将通过循环控制语句实现 运行1次 可以进行多种运算的多次练习 形成练习程序的第3版 2020 2 20 33 算法设计要点 在上一章参考程序的主体结构 菜单显示 运算选择 输入运算结果及对结果的判断等 外 再加一层循环即可 参考程序 详见教材5 5 案例5 8 返回 2020 2 20 34 本章要点 1 for语句 1 格式 for 变量赋初值 循环条件 循环变量增值 循环
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年智慧农业行业技术创新与市场前景研究报告
- 2025年清洁能源行业市场前景预测报告
- 固定铰支座课件
- 2025年生物科技行业生物信息学应用前景研究报告
- 国家事业单位招聘2025中外文化交流中心招聘2人笔试历年参考题库附带答案详解
- 国家事业单位招聘2025中国建筑文化中心招聘应届毕业生3人笔试历年参考题库附带答案详解
- 内江市2025上半年四川内江市威远县人力资源和社会保障局考核招聘事业单位人员1人笔试历年参考题库附带答案详解
- 万州区2025二季度重庆万州事业单位招聘222人笔试历年参考题库附带答案详解
- 2025重庆市大足区国衡商贸股份有限公司招聘大足区环境卫生工作人员12人笔试参考题库附带答案详解
- 2025浙江湖州市安吉县产业投资发展集团有限公司下属子公司招考14人笔试参考题库附带答案详解
- 新能源车用PTC液体加热器
- 农作物品种区域试验站建设实施方案
- 疫情防控 5.1普法教育培训记录表AQ-C1-18
- 有砟轨道施工课件
- ISO9001:2015质量管理体系内审和管理评审全套资料
- 中国的世界文化遗产课件
- 万科企业股份有限公司员工职务行为准则
- 幼儿园教学课件《半条棉被》课件
- 一建市政记忆口诀
- 阀门系数Cv和KV值计算表格(带公式)
- PETS公共英语二级大纲词汇
评论
0/150
提交评论