C言语教学chap5.ppt_第1页
C言语教学chap5.ppt_第2页
C言语教学chap5.ppt_第3页
C言语教学chap5.ppt_第4页
C言语教学chap5.ppt_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

第五章逻辑运算和选择结构 一 关系运算和关系表达式运算符优先级 注意 关系运算符为双目运算符 结合方向自左向右关系运算的结果为整数值 0或1 关系表达式定义 用关系运算符将两个表达式 算术 关系 逻辑 赋值 字符表达式 连接起来的式子例如 c a b a b c a b 二 逻辑运算符和逻辑表达式逻辑运算符 与 或 非 运算规则 逻辑表达式定义 用逻辑运算符将关系表达式或任意数据类型 void除外 的数据连接起来构成的式子使用时注意 逻辑运算符的结合性 自左向右运算量的值用0表示 假 用非0的数表示 真 表达式的结果为 0代表 假 1代表 真 三 条件运算符和条件表达式条件运算符 条件表达式的构成 表达式1 表达式2 表达式3运算过程 条件运算符的结合性自右向左例如 若a 5 b 6 c 7 d 8 求表达式a b a c d c d的值求解过程 该表达式可改写为a b a c d c d 值为8几种运算符的优先级条件运算符 逻辑运算符 除外 关系运算符 四 对几种运算符优先级别的归纳 初等运算符 包括 等 单目运算符 类型 算术运算符 先 后 关系运算符逻辑运算符 不包括 条件运算符赋值运算符 等等 逗号运算符 例1 在下列各组运算符中 优先级别最高的是 A B C D A B C 类型 D A B C D A B C D 练习 若给定条件表达式 M a a 则其中表达式M与 A M 0 等价B M 1 等价C M 0 等价D M 1 等价分析 M为0时 A中的M 0为1 不等价M为非1时 B中的M 1为0 不等价C为正确答案M为1时 D中的M 1为0 不等价 以下程序的输出结果为 i 2 j 1 k 3B i 1 j 1 k 2C i 4 j 2 k 4D i 1 j 1 k 3main inti j k a 3 b 2 i a b a b j a k b printf i d j d k d n i j k a 前置 a的值为2 b 后置 取b的值2 所以 a b 为 真 取表达式 a 因此i的值为1 a的值为1 b的值为3 后置 j的值为1 k的值为3 能满足x在 10 10 100 110 时为 真 否则为 假 的表达式是 10 x 10 100 x 100 x 10 x 110 x 10 x 100 x 10 x100 x 110 正确答案为 B D 五 if语句两种形式 形式一 if 表达式 语句 形式二 if 表达式 语句1 else语句2 表达式后没有分号 否则语句部分是一条空语句 使用时注意 if后面的表达式不限于是关系表达式或逻辑表达式 可以是任意表达式 只要能做出 真 假 判断即可if语句中可以嵌套使用if语句 在嵌套的if语句中else子句与最近的 不带else的if相结合 最近配对原则 if if if 语句1 if 语句1 else语句2 else语句2 用if语句进行程序设计设计初步用if语句描述下列数学函数y x2 1 x 1 x 1 x2 x x 1 2 x 1 2f x 1 2x b if x 1 y x x 1 x 1 if x 1 0 2 f x x x x 1 0 2 elsef x 1 0 2 if a b r a a b b s a b else r a a b b s a b 2 例1 求输入数据的绝对值设计步骤 将文字叙述转化成数学公式画出流程图用C语句实现程序设计 例2 有一函数 写一程序 输入x的值 输出y的值 部分流程图 写一程序 判断输入的一个整数是否能被3或7整除写一程序 判断输入的一个整数是否能同时被3和7整除 六 switch语句形式 switch 表达式 case常量表达式1 语句1 case常量表达式2 语句2 case常量表达式n 语句n default 语句n 1 表达式后没有 否则会出现错误 使用注意 switch后面的表达式和case后的常量表达式可以为任何整型数据 如整型表达式 字符型 枚举型 但不允许是实型数据每个case后的常量表达式的值应互不相同switch语句中可以不含default分支 default分支并不限定在最后 几个case分支没有顺序区别 但必须做适当处理 否则会影响执行结果为了执行某个case分支后跳出switch结构 应在每个case分支后加上break语句 流程图如图所示 有break的情况 无break的情况 多个case可共用一组语句如 case A case B 语句 switch语句可以嵌套使用 程序举例根据考试成绩的等级打印出百分制分数段 A 等 85 100分 B 等 70 84分 C 等 60 69分 D 等 小于60分 其余分数均视为错误成绩 分析 成绩分为四等 用if语句实现程序较复杂 字符 A B C D 恰好是顺序型的数据 考虑用switch语句实现 两个程序两种结果程序1 main chargrade scanf c 运行结果 若输入 A输出为 85 10070 8460 69 60error 程序2 main chargrade scanf c 运行结果 若输入 A输出为 85 100 设计初步将下面的程序段用switch语句改写if s 60 m 1 elseif s 70 m 2 elseif s 80 m 3 elseif s 90 m 4 elseif s 100 m 5 分析 小于60 m 1 60 69 m 2 70 79 m 3 80 89 m 4 90 100 m 5 共同特点分析 60 69 十位数字为6 70 79 十位数字为7 80 89 十位数字为8 90 99 十位数字为9 程序段改写为 switch s 10 case6 m 2 break case7 m 3 break case8 m 4 break case9 case10 m 5 break default m 1 表达式s 10 恰好可以取出变量s的十位数字 分情况讨论后得到该程序段 程序设计给出一个百分制成绩 要求输出成绩等级 A B C D E 90分以上为 A 80 89分为 B 70 79分为 C 60 69分为 D 60分以下为 E 分析 90 99 十位数字为9 80 89 十位数字为8 70 79 十位数字为7 60 69 十位数字为6 60分以下 defa

温馨提示

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

评论

0/150

提交评论