程序流程控制.ppt_第1页
程序流程控制.ppt_第2页
程序流程控制.ppt_第3页
程序流程控制.ppt_第4页
程序流程控制.ppt_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章程序流程控制 C 控制流程的语句 包括分支 循环和跳转语句 通过各种控制语句的串接和嵌套 可以组合出丰富的程序功能 4 1复合语句4 2程序的执行流程4 3分支流程4 4循环流程4 5设计举例4 6其他控制语句 Return 4 1复合语句 常用的语句有 说明和定义 声明 语句 表达式语句 流程控制语句和异常处理语句 将多条相关语句组合在一起 放在 中 就形成了复合语句 右边的 后不必再加上分号 Return 4 2程序的执行流程 程序的执行流程分 顺序流程 分支流程和循环流程 顺序流程就是按语句的顺序一条一条地向下执行 Return 4 3分支流程 在程序中加进一个判断条件 根据条件的不同值来确定执行不同的操作 就构成分支流程 参见P 51图4 1 分支流程有if语句和switch语句 当if else嵌套时 else总是和最近的一条if语句相匹配 例一 例二 Return 例一 闰年是指年份能被4整除的那些年 但不包括年份能被100整除而不能被400整除的年 编写一个程序 判断某一年是否为闰年 includevoidmain intyear cout year cout0if year 4 不能被4整除cout 年不是闰年 endl elsecout 年是闰年 endl else 能被100整除if year 400 不能被400整除cout 年不是闰年 endl elsecout 年是闰年 endl return 例二 编写一个程序 将用户输入的数字 0 6 转换成相应的星期值输出 如用户输入3 则程序输出Wednesday 用户输入0 则输出Sunday includevoidmain intweekday cout weekday switch weekday case0 cout Sunday endl break case1 cout Monday endl break case2 cout Tuesday endl break case3 cout Wednesday endl break case4 cout Thusday endl break case5 cout Friday endl break case6 cout Satday endl break default cout 表示星期的数字必须在0 6之间 endl break return 4 4循环流程 循环流程提供重复处理的能力 4 4 1while语句4 4 2do while语句4 4 3for循环 Return 4 4 1while语句 一般形式为 while 条件表达式 循环体语句 参见图4 2当条件表达式永真时 必须在语句中用break语句跳出循环 否则陷入死循环 若条件表达式一开始时就不成立 则循环体语句一次也不执行 例 return 用while循环编程求 水仙花数 includevoidmain inti 100 a b c 从100开始逐个试到999为止while i 1000 a i 10 求得个位数b i a 100 10 求得十位数c i a b 10 100 求得百位数if i a a a b b b c c c 若找到水仙花数则输出cout c 3 b 3 a 3 i endl i return 4 4 2do while语句 一般形式为 do循环体语句while 条件表达式 参见图4 5先执行循环体语句 然后再判断条件表达式是否成立 因此循环体至少执行一次 这是与while最大的不同之处 例 return 用do while编程求 水仙花数 includevoidmain inti 100 a b c 从100开始逐个试到999为止do a i 10 求得个位数b i a 100 10 求得十位数c i a b 10 100 求得百位数if i a a a b b b c c c 若找到水仙花数则输出cout c 3 b 3 a 3 i endl i while i 1000 return 4 4 3for循环 一般形式为 for 表达式一 表达式二 表达式三 循环体语句for后的表达式可以缺少一个或数个 但分号不可缺一般在循环次数已知时使用for循环较方便三种循环方式在大多数情况下可互换 例 return 用for循环编程求 水仙花数 includevoidmain inta b c 从100开始逐个试到999为止for inti 100 i 1000 i a i 10 求得个位数b i a 100 10 求得十位数c i a b 10 100 求得百位数if i a a a b b b c c c 若找到水仙花数则输出cout c 3 b 3 a 3 i endl return 4 5设计举例 例4 21 includevoidmain charch intwordNum 0 cout Pleaseinputasentence n do 过滤空格while ch cin get 空语句 无循环体 if ch n break 如果是换行则结束循环while ch P 60实验三之实验内容的第2題P 62实验三之实验要求的第2題P 62实验三之实验要求的第3題 Return 4 6其他控制语句 goto语句 无条件跳转语句 格式为goto应尽量避免使用 仅在从多重循环直接跳出最外层循环时用 continue语句 继续语句 限用于循环体中 执行到continue结束本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论