已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第五章 循环控制 5 1概述 什么是循环 为什么要使用循环 问题1 问题2 求学生平均成绩分数相加后除以课数 在许多问题中需要用到循环控制 循环结构是结构化程序设计的基本结构之一 它和顺序结构 选择结构共同作为各种复杂程序的基本构造单元 5 3用while语句实现循环 while语句用来实现 当型 循环结构 一般形式 while 表达式 语句当表达式为非0值时 执行while语句中的内嵌语句 其特点是 先判断表达式 后执行语句 求1到100的和 includevoidmain inti sum 0 i 1 while i 100 sum sum i i printf d n sum 说明 1 循环体如果包含一个以上的语句 应该用花括弧括起来 以复合语句形式出现 2 在循环体中应有使循环趋向于结束的语句 运行结果 5050 初始化 循环终止测试条件 循环体 循环增量 5 4用do while语句实现循环 do while语句的特点 先执行循环体 然后判断循环条件是否成立 一般形式 do循环体语句while 表达式 执行过程 先执行一次指定的循环体语句 然后判别表达式 当表达式的值为非零 真 时 返回重新执行循环体语句 如此反复 直到表达式的值等于0为止 此时循环结束 求1到100的和 includevoidmain inti sum 0 i 1 do sum sum i i while i 100 printf d n sum 运行结果 5050 while语句和用do while语句的比较 在一般情况下 用while语句和用do while语句处理同一问题时 若二者的循环体部分是一样的 它们的结果也一样 但是如果while后面的表达式一开始就为假 0值 时 两种循环的结果是不同的 while和do while循环的比较 include includevoidmain voidmain intsum 0 i intsum 0 i scanf d 运行结果 1 sum 55再运行一次 11 sum 0 运行结果 1 sum 55再运行一次 11 sum 11 说明 1 当while后面的表达式的第一次的值为 真 时 两种循环得到的结果相同 否则 二者结果不相同 5 5用for语句实现循环 C语言中的for语句使用最为灵活 不仅可以用于循环次数已经确定的情况 而且可以用于循环次数不确定而只给出循环结束条件的情况 它完全可以代替while语句 一般形式 for 表达式1 表达式2 表达式3 语句 for语句的执行过程 1 先求解表达式1 2 求解表达式2 若其值为真 值为非0 则执行for语句中指定的内嵌语句 然后执行下面第 3 步 若为假 值为0 则结束循环 转到第 5 步 3 求解表达式3 4 转回上面第 2 步骤继续执行 5 循环结束 执行for语句下面的一个语句 for 表达式1 表达式2 表达式3 语句 5 5用for语句实现循环 循环初始条件 循环控制条件 循环体 for语句等价于下列语句 表达式1 while 表达式2 语句 表达式3 5 5用for语句实现循环 for语句最简单的形式 for 循环变量赋初值 循环条件 循环变量增值 例如 for i 1 i 100 i sum sum i 相当于 i 1 while i 100 sum sum i i 用for语句简单 方便 5 7循环的嵌套 下面几种都是合法的形式 1 while 2 do 3 for while dofor while while 5 7循环的嵌套 4 while 5 for 6 do do while for while while 问题提出 main printf main inti for i 1 i 5 i printf main inti j for i 1 i 5 i for j 1 j 5 j printf printf n 现场编程完成例 编程输出如下形式的乘法九九表 includemain intm n for m 1 m 10 m printf 4d m 打印表头 printf n for m 1 m 10 m printf printf n for m 1 m 10 m for n 1 n 10 n printf 4d m n printf n 现场编程完成 将上例输出格式改成如下的下三角格式打印 includemain intm n for m 1 m 10 m printf 4d m 打印表头 printf n for m 1 m 10 m printf printf n for m 1 m 10 m for n 1 n m n printf 4d m n printf n 6 8break语句和continue语句 5 8 1break语句break语句可以用来从循环体内跳出循环体 即提前结束循环 接着执行循环下面的语句一般形式 break 注意 break语句不能用于循环语句和switch语句之外的任何其他语句中 5 8break语句和continue语句 例 floatpi 3 14159 for r 1 r100 break printf r f area f n r area 程序的作用是计算r 1到r 10时的圆面积 直到面积area大于100为止 从上面的for循环可以看到 当area 100时 执行break语句 提前结束循环 即不再继续执行其余的几次循环 5 8break语句和continue语句 5 8 2continue语句作用为结束本次循环 即跳过循环体中下面尚未执行的语句 接着进行下一次是否执行循环的判定 一般形式 continue 5 8break和continue语句 continue语句和break语句的区别continue语句只结束本次循环 而不是终止整个循环的执行 while 表达式1 if 表达式2 continue 5 8break语句和continue语句 continue和break的区别break语句则是结束整个循环过程 不再判断执行循环的条件是否成立 while 表达式1 if 表达式2 break 例6 5把100 200之间的不能被3整除的数输出 includevoidmain intn for n 100 n 200 n if n 3 0 continue printf d n 说明 当n能被3整除时 执行continue语句 结束本次循环 即跳过printf函数语句 只有n不能被3整除时才执行prin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 46456.1-2025信息技术设备互连智能家居互联互通第1部分:架构与通用要求
- 合伙酒店转让合同范本
- 代替上班合同书协议书
- 公司研发团队合同范本
- 合伙购置机器合同范本
- 俱乐部马匹寄养协议书
- 合伙买卖商业房协议书
- 借款附带担保合同范本
- 合同变更公司补充协议
- 在线教育行业技术规范与市场前景
- 人机交互效能评估体系研究
- 生物反馈与认知行为疗法结合-洞察及研究
- 储能现场安全培训
- 2025年红沙开采行业深度研究报告
- 中石油夏季八防安全培训课件
- 《医学影像诊断报告书写指南》(2025版)
- 金融科技赋能商业银行零售业务发展研究 -以中国建行银行为例
- 医学综合专升本试题+参考答案
- 无人机培训学校校企合作与行业发展方案
- 电子信息毕业论文范文
- 工业园区物业知识培训课件
评论
0/150
提交评论