jin5第五章选择结构程序设计.ppt

上传人:max****ui 文档编号:6356071 上传时间:2020-02-23 格式:PPT 页数:42 大小:3.40MB
返回 下载 相关 举报
jin5第五章选择结构程序设计.ppt_第1页
第1页 / 共42页
jin5第五章选择结构程序设计.ppt_第2页
第2页 / 共42页
jin5第五章选择结构程序设计.ppt_第3页
第3页 / 共42页
点击查看更多>>
资源描述
2020 2 23 1 第五章选择结构程序设计 李书涛list37 2020 2 23 2 目录 1if条件分支结构 2switch case开关语句 3选择结构的嵌套 4选择结构程序应用实例 5本章小结 第五章选择结构程序设计 2020 2 23 3 C程序 源文件1源文件2源文件3 源文件n 预处理命令函数1函数2 函数n 说明语句执行语句 main 最小编译单位 最小功能单位 必须具有一个主函数 1if条件分支结构 1if条件分支结构5 1 1C程序概述 2020 2 23 4 一个C程序由若干函数组成 程序中有且仅有一个主函数main 程序的运行从主函数开始 函数由函数名和函数体组成 函数体由说明语句和执行语句组成 C中执行语句有四类 说明语句表达式语句复合语句控制语句空语句 C程序的特点 1C语言程序基本结构 2020 2 23 5 结构化程序有三种基本结构 顺序结构 选择结构 循环结构 语句执行的顺序与程序书写的顺序一致 条件成立 执行A 否则 执行B 重复执行某组动作 结构 条件成立时 反复执行A 条件不成立 停止 重复执行动作A 当某一条件成立时 停止 5 1 2C程序的基本结构 2020 2 23 6 main inta b c a 5 b 6 c a b printf d c 程序执行的顺序和语句书写的顺序一致 有一个数据入口一个数据出口 基本结构 一 顺序结构 2020 2 23 7 条件 A B Y N 当条件满足时 执行语句A 否则 执行语句B 有一个数据入口一个数据出口 键盘输入一个整数 判断其正负 例 inta a a 0 if a 0 printf a为正数 elseprintf a为负数 语句A 语句B 打印a的值 二 选择结构 2020 2 23 8 Y N 求1 100的自然数之和 X 100 x 1S 0 语句 若条件满足 重复执行语句内容 否则 退出循环 条件 一个数据入口一个数据出口 s s x x x 1 语句 S 条件不满足 不执行任何语句 三 循环结构1 当型循环 2020 2 23 9 语句 N Y 求1 2 3 n 1000的最大的n 例 n 1 s 0 s s nn n 1 S 1000 n 1s 0 语句 不论条件是否满足 语句至少执行一次 2 直到型循环 s 1 2 3 n s 1000 2020 2 23 10 1if else条件语句2switch 开关语句3for 循环语句4while 循环语句5do while 循环语句6break间断语句7continue继续语句8goto转向语句9return返回语句 控制语句的作用在于控制程序的走向 流程 共有九种语句 条件 循环 多分支 函数 5 1 3流程控制语句 2020 2 23 11 5 1 4条件语句 if语句构成的条件结构是C的三种基本结构之一 用来确定给定的条件是否满足 所含条件一般是关系表达式或逻辑表达式 根据学生分数判断是否及格 根据学生分数如何进行分级 提出问题 自然语言 如果 那么 否则 C语言 分支语句 如何解决 2020 2 23 12 本节重点 if语句的基本格式带分支的条件语句多分支的条件语句if结构的嵌套 1 if语句的基本格式 if 表达式 语句功能 判断表达式的值 若为非0 执行语句 否则 跳过语句继续执行下一条语句 输出不及格的成绩main inta scanf d 一 if语句的三种基本形式 2020 2 23 13 格式 if 表达式 语句1else语句2 main inta scanf d N 条件 Y 语句2 语句1 功能 判断表达式的值 若为非0 执行语句1 否则执行语句2 2 带分支的条件语句 2020 2 23 14 求a和b两数中较大的一个数 main inta b max scanf d d max b max b Y N 格式一 假定a是较大的一个数 若b a 将b赋给max 程序举例格式一 2020 2 23 15 main inta b max scanf d d 求a和b两数中较大的一个数 a b max b Y N max a 格式二 程序举例格式二 2020 2 23 16 多分支 格式if 表达式1 语句1elseif 表达式2 语句2elseif 表达式3 语句3 else语句n 表达式1 表达式3 表达式2 语句1 语句2 语句3 语句n Y Y Y N N N 3 多分支的if结构 从键盘输入一个整数a 按其值的大小 输出a小于10 a大于10小于100 a大于100小于1000或a大于1000 程序举例 main inta scanf d 2020 2 23 18 5 当if后有多个执行语句时 必须用 将多个语句括起来 构成一个复合语句 而 之外不必有分号 多分支 1 if语句中进行条件判断的 表达式 必须用 括起来 且不可省略 2 条件后面不加分号 3 语句之后有分号 4 else不是语句 不能单独使用 有关if语句的说明 多分支 main intyear floatmoney rate total 本金 月利率 本利合计 printf Inputmoneyandyear scanf f d 程序举例 计算本利合计 2020 2 23 20 格式 if 表达式 if 表达式1 语句11else语句12elseif 表达式2 语句21else语句22 在一个if结构中 包含一个或多个if结构 判断表达式的值 若为非0 再判断表达式1的值 非0执行语句11 否则执行语句12 若表达式的值为0 再判断表达式2的值 非0执行语句21 否则执行语句22 功能 二 if语句的嵌套 2020 2 23 21 if语句的嵌套流程图 2020 2 23 22 在if语句的 语句1 或 语句2 中又包含着if语句 main intx y printf EnterintegerXandY scanf d d 表达式 if与else之间的匹配 else总是与同它最近的if相匹配 表达式1 注意 程序举例 判断两数的关系 嵌套 else if if else else else else if if if 程序举例 课堂作业 2020 2 23 24 格式 switch 表达式 case常量表达式1 语句1case常量表达式2 语句2 case常量表达式n 语句ndefault 语句n 1 switch case开关语句 多重分支的条件语句switch 2switch case开关语句 2switch case开关语句5 2 1开关语句 多分支结构程序设计 例题 按照考试成绩输出百分制分数段 main chargrade scanf c 输入字母B 输出 70 8460 69 60Error printf 70 84 n printf 70 84 n break 程序举例 2020 2 23 26 2case后的每个常量表达式必须各不相同 说明 1括号内的表达式可以是int char 3case和default的位置是任意的 4每一个case之后应有一个以跳出switch 结构 break 间断语句 5每个case之后的执行语句可多于一个 但不必加 6允许几种case情况下执行相同的语句 不必每个都写case 注意事项 2020 2 23 27 语句1 常量1 计算表达式的值 break 语句2 常量2 break 语句n 1 有default Y N N N Y Y switch语句流程图 main floatx y charc doubler scanf f f c 当输入3 5 之后 r的值为8 000000 如果没有break语句 会顺序执行下面的r x y r x y r x y 则 最后的结果为 5 2 2程序分析 四则运算 例 输入年 月 计算该月有多少天 main intyear month days printf Enteryear 几个CASE执行相同的语句 跳出开关结构 处理 大 月 程序举例2 关系到如何判闰年 case4 case6 case9 case11 days 30 break case2 if year 4 0 判断是否为闰年 开关结构结束 处理 小 月 处理 平 月 程序举例2 续 2020 2 23 31 二 开关语句 基本形式 功能 要求 break的作用 和default的作用 一 if语句的基本形式 分支形式 多分支形式 以及嵌套形式else与if的匹配 三 需注意的问题 1 自增 自减作为if的条件时 边界条件的处理2 if中的复合语句 选择语句小结 2020 2 23 32 3选择结构的嵌套 3选择结构的嵌套 选择结构可以嵌套使用 如if elseif else结构实际上就是if语句的嵌套形式 当需要处理问题的判断条件更为复杂时 可以用各种结构形式的if语句中相互镶嵌 可以是一个 也可以是多个if语句 形成相应的层层嵌套 但注意嵌套关系不能交叉 2020 2 23 33 4选择结构程序应用实例 4选择结构程序应用实例应用实例流程图 输入两个整数 若它们的平方和大于100 则输出平方和百位以上的各数字 否则输出两个整数的和 对于一个整数 取前几位 百位以上 用除法 取后几位 百位以下 用取模运算 例如 当K 12345时 前三位 K 100 123 后两位 K 100 45 2020 2 23 34 main inta b c d printf Pleaseinputa b n scanf d d 输入 11 10输出 221 2输入 3 2输出 a b 5 应用实例程序 2020 2 23 35 选择结构程序应用实例 一 使用if形式的if语句来实现选择结构 main floatx y printf inputx scanf f 2020 2 23 36 二 使用if elseif else形式的if语句实现选择结构 main floatx y printf inputx scanf f 2020 2 23 37 三 使用嵌套的if语句实现选择结构 main floatx y printf inputx scanf f 2020 2 23 38 5本章小结 5本章小结 条件分支结构是程序设计流程控制的重要组成部分 其中简单的if分支结构可以实现一路流程的分支 if else两路分支结构可以实现二选一分支 if elseif else多路分支结构可以实现从多种情况条件中选择一路执行程序流程 条件运算符可以更加简洁地实现条件分支运算 而switch case开关语句能够方便清晰地实现多选一的程序流程执行 各种选择结构相互之间 根据逻辑上的需要可以分层嵌套 但是要注意层层匹配 不能交叉 上机与作业二 第三章选择结构的程序设计 必做题 x 5 600 N 6 编写程序 对输入的购买金额 输出顾客购买金额 实际支付的金额和返还的金额 2020 2 23 40 END 交作业注意事项 1 只收word文件 其它如txt文件或文件夹均退回重做 2 word文件名格式 如 080107011001 测控1班 徐鹏霖 作业2 doc3 作业内容 每道题都要有 题目 程序和运行结果 4 学号 班号 姓名 作业号 doc 先将程序编写在稿纸上 第5周上机调试运行得到正确结果 2020 2 23 41 TC上机补充说明 目前机房桌面上的TC快捷图标 其TC系统安装在D盘上 路径为 D TC2 1 O TC 因此需要修改TC环境菜单的Options的下拉菜单的Directories项 在Directories之下修改三个项目的路径 C TURBO2 INCLUD改为D TC2 1 O TC INCLUDEC TURBO2 LIB改为D TC2 1 O TC LIBC TURBO2改为D TC2 1 O TC2 注意保存自己的源程序文件并且带走 3 可以方便使用C语言自身的图形命令 但不能使用汉字 综合实例 判断输入整数的正负性和奇偶性 main intx printf Enterainteger 提示 输入一个整数 scanf d 整数为零
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!