




已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四章循环控制 本章要点 建立循环程序设计的基本概念和逻辑思维掌握C语言循环程序设计的方法 4 1概述1 引入循环控制语句的作用当满足一定条件时 重复执行一段程序 2 设置循环需要考虑的问题循环初值 循环条件的设置 循环体应包括的语句 循环条件的修改 3 C语言中可用以下语句实现循环循环结构主要有 1 用goto语句和if语句构成循环 2 用while语句 3 用do while语句 4 用for语句 4 2goto语句以及用goto语句构成循环 一般形式 goto标号 标号 语句其中 标号用标识符表示 即由字母 数字和下划线组成 且首字符必须为字母或下划线 不能用整数来作标号 用途 1 与if语句一起构成循环结构 2 从循环体中跳到循环体外 一般指最深层 3 改变程序自上而下的执行顺序 缺点 滥用goto语句 可使程序无规律 可读性差 例4 1用if语句和goto语句构成循环 求和s 1 2 100main inti sum 0 i 1 loop if i 100 sum sum i i gotoloop printf d sum 4 3while语句 一般形式 while 表达式 语句功能 当表达式为非0值时 执行while语句中的内嵌语句 特点 先判断表达式 后执行语句 流程图 说明 1 执行while循环语句时 如果表达式的值第一次计算就等于0 则循环体一次也不执行 2 发生下列情况之一时 while循环结束执行 表达式的值为0 循环体内遇到break语句 循环体内遇到goto语句 且与该goto语句配合使用的标号所指定的语句在本循环体外 循环体内遇到return语句 此时退出while循环后 执行的流程从包含该while语句的函数返回到调用函数 例4 2求main inti sum 0 i 1 while i 100 sum sum i i printf d sum i 1 sum 0 i 100 sum sum ii i 1 零 非零 说明 1 循环体中如果包含一个以上的语句 应该用花括号括起来 2 在循环体中应有使循环趋于结束的语句 避免进入死循环 在本例中 设置循环条件为i 100 然后语句中有i 这样就不会出现死循环 4 4do while语句 一般形式 do循环体语句while 表达式 特点 先执行循环体 然后判断条件是否成立 成立继续执行 否则退出循环 流程图 例4 3用do while语句求main inti sum 0 i 1 do sum sum i i while i 100 printf d sum 表达式 0 语句 零 非零 i 100 sum sum ii i 1 i 1 while语句与do while语句之间的区别和相同点1 do while语句结构可以转换成while结构 可以认为do while结构是由一个语句加一个while结构构成 2 当while后的表达式为真时 while语句和do while语句的结果相同 但是对于while后面的表达式一开始就为0值 两种循环的结果不同 main inti s 0 scanf d 输入 1打印 55输入 11打印 0 main inti s 0 scanf d 输入 1打印 55输入 11打印 11 4 5for语句 for语句的一般形式为 for 表达式1 表达式2 表达式3 语句执行过程流程图 表达式1 表达式2 真 语句 表达式3 假 for语句的下一语句 例 for i 1 i 100 i sum sum i i 1 i 100 真 sum sum i i 假 它相当于i 1 while i 100 sum sum i i 说明 1 for语句的一般形式中的 表达式1 可以省略 此时应在for语句之前给循环变量赋初值 比如 for i 1 i 100 i sum sum i 可写为 i 1 for i 100 i sum sum i 2 表达式2不能省略 否则会导致死循环 3 表达式3可以省略 但此时应另外设法保证循环能正常结束 比如 for i 1 i 100 i sum sum i 可写为 for i 1 i 100 sum sum i i 4 表达式1可以为设置循环变量初值的赋值表达式 也可以是与循环变量无关的其他变量表达式 此外表达式1和表达式3还可以是逗号表达式 即包含一个以上的简单表达式 中间用逗号间隔 例 for sum 0 i 100 i sum sum i for i 0 j 100 i j i j k i j 5 表达式2一般是关系表达式或逻辑表达式 也可以为数值表达式或字符表达式 只要其值为非零 就执行循环体 例 for c getchar n printf c c 此句的作用是每读入一个字符后输出该字符 直到输入一个 换行符 为止 4 for语句简单 方便 使用灵活 不仅可以用于循环次数已经确定的情况 而且可以用于循环次数不确定只给出循环结束条件的情况 它完全可以取代while和dowhile语句 4 4循环的嵌套 C语言中 允许三种循环 while循环 do while循环和for循环 相互嵌套和进行多层嵌套 下面几种都是合法的嵌套形式 for while for循环体嵌套while循环体 for for for循环体嵌套for循环 do do while while do while循环体嵌套do while循环 while do while while循环体嵌套do while循环 while for while循环体嵌套for循环 do for while do while循环体嵌套for循环 例7 for语句的循环嵌套例子 for i 1 i 2 i for j 1 j 2 j printf 3d i j printf n output 2334 for i 1 i 2 i for j 1 j 2 j printf 3d i j printf n 4 8break语句和continue语句 4 8 1break语句break语句的一般形式 break 作用 只能用于循环语句和switch语句 用来从循环体内跳出循环体 以提前结束循环 例 for r 1 r100 break printf f area 4 8 2continue语句一般形式 continue 作用 结束本次循环 即跳过循环体中下面尚未执行的语句 接着进行下一次是否执行循环的判定 contiune语句和break语句的区别是 contiune语句只是终止本次循环 不是终止整个循环 而break语句是结束整个循环 详细的流程图分析 可参见教科书 例4 5把100 200之间的不能被3整除的数输出 main intn for n 100 n 200 n if n 3 0 continue printf d n 4 9程序举例 例4 4用求的近似值 直到最后一项的绝对值小于10 4为止 下为N S流程图和程序 includemain ints floatn t pi t 1 pi 0 n 1 0 s 1 while fabs t 1e 4 pi pi t n n 2 s s t s n pi pi 4 printf pi 10 4f n pi 例4 7求Fibonacci数列的40个数 Fibonacci数列为 main longintf1 f2 inti f1 1 f2 1 for i 1 i 20 i printf 12ld 12ld f1 f2 if i 2 0 printf n f1 f1 f2 f2 f2 f1 1 1 2 3 5 8 13 例4 8判断m是否为素数 分析 判断一个数是否为素数 通常的做法是让这个数被从2到它的平方根 取整 的数除 如果能被其中任何一个数整除 则该数不是素数 includemain intm i k scanf d 例4 9
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 残联安置协议书
- 车辆交割协议书模板
- 实习协议与保密协议
- 国有企业借款合同
- 公司股份制合同协议书
- 环境工程污水处理技术应用试题集
- 商务往来文书与合同样本集
- 比赛授权协议书
- 产品授权经销协议书
- 无线接口协议书
- 企业数字化转型的国外研究现状共3篇
- T-GDWCA 0033-2018 耳机线材标准规范
- NB/T 10533-2021采煤沉陷区治理技术规范
- GA/T 1068-2015刑事案件命名规则
- 主治医师聘用合同
- 2021年四川绵竹高发投资有限公司招聘笔试试题及答案解析
- 建设工程消防验收备案抽查复查申请表
- 水费计算、水权与水价课件
- 思想道德与法治课件:第六章 第一节 社会主义法律的特征和运行
- 61850报文解析-深瑞版-131016
- 江西新定额2017土建定额说明及解释
评论
0/150
提交评论