第5章_选择(无闰年)概论.ppt

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 本章要点 关系表达式 逻辑表达式 选择结构程序设计 主要内容 5.1 关系运算符和关系表达式 5.2 逻辑运算符和逻辑表达式 5.3 if语句 5.4 switch语句 5.5 程序举例 5.1 关系运算符和关系表达式 5.1 关系运算符和关系表达式 5.2 逻辑运算符和逻辑表达式 5.2 逻辑运算符和逻辑表达式 5.2 逻辑运算符和逻辑表达式 5.2 逻辑运算符和逻辑表达式 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.3 if语句 5.4 switch语句 5.4 switch语句 5.4 switch语句 5.4 switch语句 5.5 程序举例 5.5 程序举例 5.5 程序举例 5.5 程序举例 5.5 程序举例 §5.5 程序举例 §5.5 程序举例 说明: (1)条件运算符的执行顺序:先求解表达式1,若为 非0(真),则求解表达式2,此时表达式2的值就 作为整个条件表达式的值。若表达式1的值为0(假), 则求解表达式3,表达式3的值就是整个条件表达式 的值。 (2)条件运算符优先级高于赋值运算符 ,低于关系运 算符和算术运算符。 如: (ab)?a:(b+1) (3)条件运算符的结合方向为“自右至左”。 等同于ab?a:(cd?c:d) 等同于ab?a:b+1 如:ab?a:cd?c:d (4)“表达式2”和“表达式3”不仅可以是数值表达式,还 可以是赋值表达式或函数表达式。 如果 ab,则条件表达式的值为2.5;若a≤b,值应为1 ,但由于2.5是实型,比整型类型高,因此1要转换成实型值1.0。 如: (ab)? ( a=3 ):(b=4) (ab)? printf( “%d”,a ) :printf( “%d”,b ) (5)条件表达式中,表达式1的类型可以与表达式2和表达式3的类型不同。表达式2和表达式3的类型也可以不同,此时条件表达式的值的类型为二者中较高的类型。 如: ab? 2.5 : 1 例5.4输入一个字符,判别它是否大写字母,如果是,将它转换成小写字母;如果不是,不转换。然后输出最后得到的字符。 #include stdio.h void main ( ) { char ch; scanf(%c, ch); ch=(ch=A ch=Z)?(ch+32):ch; printf(%c\n,ch); } 如果字符变量ch的值为大写字母,则条件表达式的值为(ch+32),即相应的小写字母。如果ch的值不是大写字母,则不进行转换,即条件表达式的值为ch。 switch语句(多分支选择语句)的格式: switch (表达式) { case 常量表达式1:语句1 case 常量表达式2:语句2 … case 常量表达式n:语句n default:语句n+1 } 例:要求按照考试成绩的等级输出百分制分数段,用 switch语句实现: switch(grade) { case ′A′∶printf(″85~100\n″);   case ′B′∶printf (″70~84\n″);   case ′C′∶printf (″60~69\n″);   case ′D′∶printf (″<60\n″); default∶printf ( ″error\n″); } 说明: (1)switch后面括弧内的“表达式”, ANSI标准允许它为任何类型。 (2) 当表达式的值与某一个case后面的常量表达式的值相等时,就执行此case后面的语句,若所有的case中的常量表达式的值都没有与表达式的值匹配的,就执行default后面的语句。 (3) 每一个case的常量表达式的值必须互不相同,否则就会出现互相矛盾的现象(对表达式的同一个值,有两种或多种执行方案)。 (4) 执行完一个case后面的语句后,流程控制转移到下一 个

文档评论(0)

x5511160 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档