




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2008 04 18 第四章选择结构 课次1 课时3 主讲 陈哲 2008 04 18 第四章选择结构 1 关系运算和逻辑运算2 if语句构成的选择结构3 条件表达式构成的选择结构4 switch语句以及用switch语句和break语句构成的选择结构 2008 04 18 C语言中的逻辑值 用非零值来表示 真 用零表示 假 关系运算符 1 大于 大于等于 等于 不等于 注意 由两个字符组成的运算符之间不可以加空格 关系运算 2008 04 18 关系运算是双目运算符 具有自左至右的结合性 以上运算符中 前四种 的优先级别相同 后两种 优先级相同 且前四种级别高于后两种 关系运算符 算术运算符和赋值运算符之间 优先级别的次序是 算术运算符 关系运算符 赋值运算符有关系运算符组成的表达式 称为关系表达式 关系运算符两边的运算对象可以是C语言中任意合法的表达式 关系运算的结果得一个整数值 0或者1 当关系运算符两边的值类型不一致时 若一边是整型 一边是实型 系统将自动把整型转换成实型 转换规则见附二 例如 a b a 3 b 4 a c c 关系运算 返回 2008 04 18 C语言提供了三种运算符 逻辑 与 逻辑 或 逻辑 非 其中 和 是双目运算符 是单目运算符 优先级次序 逻辑运算与算术运算 赋值运算 关系运算从高到低的次序是 算术运算 关系运算 赋值运算 逻辑运算 2008 04 18 逻辑表达式 由逻辑表达式和运算对象所组成的表达式 逻辑表达式的值 逻辑运算 返回 2008 04 18 不含else子句的if语句 语句形式如下 if 表达式 语句 if是C语言的关键字 表达式两侧的圆括号不能少 最后是一条语句 称为if子句 如果在if子句中需要多个语句 则应该使用花括号把一组语句括起来组成复合语句 例如 if a b t a a b b t if语句的执行过程 计算if后面括号中的表达式的值 若表达式的值为非 真 则执行其后的if语句 若表达式的值为 假 则跳过if子句 直接执行if语句后的下一个语句 if语句构成的选择结构 一 2008 04 18 例 输入两个数 分别放入x和y中 若两数不相等 则输出其中的大数 若两数相等 则输出字符串 x y 和x的值 main intx y printf Enterx if语句构成的选择结构 一 2008 04 18 例2 输入三个整数 分别放在变量a b c中 程序把输入的数据重新按由小到大的顺序放在变量a b c中 最后输出a b c中的值 main inta b c t printf inputa b c scanf d d d if语句构成的选择结构 一 2008 04 18 含else子句的if语句 语句的形式如下 if 表达式 语句 else语句 在这里 语句 称为if子句 语句 称为else子句 这些子句只允许是一条语句 若需要多条语句时 则应该用花括号 将语句括起来组成符合语句 例如 if a 0 printf a 0 n elseprintf a 0 n if语句构成的选择结构 二 2008 04 18 例 输入两个不等的整数分别给x和y 输出其中的大数 main intx y printf Enterx if语句构成的选择结构 二 2008 04 18 例 输入一个数 判别它是否能被3整除 若能被3整除 打印YES 不能被3整除 打印NO main intn printf inputn scanf d if语句构成的选择结构 二 2008 04 18 说明 if语句后面圆括号中的表达式 可以是任意合法的c语言表达式 也可以是任意类型的数据 if语句的圆括号后面不能有分号 无论是否有else子句 if子句中后的分号不能省略 if语句构成的选择结构 二 2008 04 18 在if子句中嵌套具有else子句的if语句 if 表达式 if 表达式 语句 else语句 else语句 嵌套的if语句 if语句构成的选择结构 三 在if子句中嵌套不含else子句的语句 if 表达式 if 表达式 语句 else语句 注意 在if子句中的一对花括号不可缺少 因为c语言语法规定 else子句总是与前面最近的不带else的if相结合 与书写格式无关 2008 04 18 if语句构成的选择结构 三 在else子句中嵌套if语句 1 嵌套的if语句带有else if 表达式1 语句1elseif 表达式2 语句2else语句3或写成 if 表达式1 语句1elseif 表达式2 语句2else语句3 2 嵌套的if语句不带else if 表达式1 语句1elseif 表达式2 语句2或写成 if 表达式1 语句1elseif 表达式2 语句2 2008 04 18 多层嵌套 if 表达式1 语句1elseif 表达式2 语句2elseif 表达式3 语句3elseif 表达式4 语句4else语句n if语句构成的选择结构 三 例5 编写程序 根据输入的学生成绩 给出相应的等级 90分以上的等级为A 60分以下的等级为E 其余每10分为一个等级 main intg printf Enterg scanf d 返回 2008 04 18 条件运算符 由两个运算符组成 它们是 这是C提供的唯一的三目运算符 即要求有三个运算对象 条件表达式 表达式1 表达式2 表达式3运算功能 当 表达式1 的值为非0时 求出 表达式2 的值就是整个条件表达式的值 当 表达式1 的值为0时 去求 表达式3 的值 并把 表达式3 的值作为整个条件表达式的值 优先级 条件运算符优先于赋值运算符 但低于逻辑运算 关系运算和算术运算 例1 y x 10 100 200 例 printf abs x d n x 0 1 x x 条件表达式构成的选择结构 返回 2008 04 18 多分支选择机构 语句形式 switch 表达式 case常量表达式1 语句1 case常量表达式2 语句2 case常量表达式3 语句3 case常量表达式n 语句n default 语句n 1 switch语句 一 2008 04 18 说明 switch是关键字 switch语句后用 括起来的部分成为switch语句体 switch后一对括号中的 表达式 可以是整型表达式及后面将要学习的字符表达式等 括号不能省略 case也是关键字 与其后的常量表达式合称case语句标号 常量表达式的值必须与switch后的表达式类型相同 个case语句标号的值应各不相同 default也是关键字 起标号的作用 代表所有case标号之外的标号 default可以出现在语句体的任何位置上 switch中也可以没有default语句 case后可以是一条语句 也可以是多条语句 必要时 case后的语句可以省略不写 但冒号不能省略 在关键字case和常量表达式之间一定要有空格 如 case10 不能写成case10 switch语句 二 2008 04 18 switch语句的执行过程 先计算switch后的表达式的值 然后在switch语句体中寻找与该值吻合的case标号 若有则执行其后的语句 直到switch语句结束 若没有 并且存在default标号 则从default后的语句开始执行 直到switch语句结束 若没有 并且不存在default标号 则跳过switch语句 什么也不做 switch语句 三 2008 04 18 例 根据输入的学生成绩 输出对应的等级 改写例 main intg printf Enterg scanf d switch语句 四 若输入80则程序的输出结果是 g 80BCDE 2008 04 18 在switch语句体中使用break语句 break语句也称为间断语句 可以在case之后的语句最后加上break 每当执行到br
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 瑶海区注册公司合同范本
- 消防安全协议书合同范本
- 股东借款合同协议书范本
- 锅炉安装工程协议合同书
- 物流仓储安全管理协议书
- 税务代理项目协议书范本
- 灵活用工协议与劳动合同
- 江西北斗卫星导航协议书
- 股票期权服务协议合同书
- 脱落墙体粉刷维修协议书
- 办公楼电气系统改造方案
- 征地拆迁工作整改措施
- GB/T 45089-20240~3岁婴幼儿居家照护服务规范
- 《车路协同 路侧感知系统 第2部分:测试方法》
- 办公楼物业保安管理服务方案
- 游戏开发与运营合同
- 2024儿童身高现状报告
- 重庆市园林水生植物栽植技术标准
- 消防安全责任人任命书
- CJJT148-2010 城镇燃气加臭技术规程
- DLT 5285-2018 输变电工程架空导线(800mm以下)及地线液压压接工艺规程
评论
0/150
提交评论