文档详情

05选择程序流程设计.PPT

发布:2017-05-25约8.51千字共44页下载文档
文本预览下载声明
第5章选择结构程序设计 5.1 关系运算符和关系表达式 5.2 逻辑运算符和逻辑表达式 5.3 if语句 5.4 switch语句 5.5程序举例 5.1关系运算符和关系表达式 关系运算符及其优先次序 C语言有六种关系运算符,均为左结合: 小于 = 小于或等于 优先级相同(高) 大于 = 大于或等于 ==(连续两个=) 优先级相同(低) != 不等于 关系表达式 用关系运算符将两个表达式连接起来的式子 关系运算符与其它运算符 的优先级关系 例:a=3,b=2,c=1; 1) ca+b 2) ab==c 3) a!=bc 关系表达式的赋值: 例:a=3,b=2,c=1; d=ab f=abc 5.2 逻辑运算符和逻辑表达式 逻辑运算符及其优先次序 C语言提供三种逻辑运算符: 逻辑“与”双目运算符 || 逻辑“或”双目运算符 ! 逻辑“非”单目运算符 右结合 它们的优先级别是: 逻辑非(!)→逻辑与()→逻辑或(||) 5.2逻辑运算符和逻辑表达式 与其它运算符的关系是: 5.2逻辑运算符和逻辑表达式 逻辑表达式的值是逻辑值 真(1) 、假(0) 对判断对象以(非0)代表真,以(0)代表假 a b ab a||b !a !b 0 0 0 0 1 1 0 非0 0 1 1 0 非0 0 0 1 0 1 非0 非0 1 1 0 0 利用逻辑表达式可表示复杂的条件-复合条件 例:判别某一年year是否为闰年,闰年的条件符合下面二者之一 (1)能被4整除,但不能被100整除 (2)能被4整除,又能被400整除 可以用一个逻辑表达式表示: 5.3 if语句 用流程图表示的选择结构: if语句三种形式 1.if(表达式)语句 2.if(表达式)语句1 else 语句2 3. if (表达式1)语句1 else if(表达式2) 语句2 . . . else if (表达式n) 语句n else 语句n if语句—用if语句实现选择结构 if——用来判别给定条件是否满足,来决定程序的流程 格式: if (表达式) 语句1; [else 语句2;] 1. 单分支选择结构 [例5.3] 输入一个整数求绝对值 (4)程序执行到switch语句时,首先计算表达式的值,然后将 表达式的值依次与每一个case后的常量(标号)进行比 较,如果某一个case的常量(标号)值等于表达式的值, 就执行此case标号后的语句,执行完后,若碰到break语 句,则跳出switch;否则,将无条件执行后面的case语 句,而不再进行标号判断。因此,只有switch语句和 break语句配合才能形成真正意义上的多分支。如果没有 任何一个case常量与表达式的值相匹配,则执行default后 面的语句序列n+1。 (5)如果某个case标号下的语句省略不写,则表示它与后续 case执行相同的语句。 (6)case标号出现的顺序可以不固定;case和default的出现顺 序也可以不固定,即default可以出现在case之前,不影响 程序的运行结果。从执行效率的角度考虑,一般将发生频 率高的情况放在前面 用switch语句编写程序:根据输入的百分 制成绩score,转换成相应的五分制成绩 grade,并打印出来 转换标准为: A 90=score=100 B 80=score90 grade= C 70=score80 D 60=score70 E 0=score60 if语句的嵌套的进一步说明 一般形式 if ( ) if ( ) 语句1 else 语句2 else if ( ) 语句3 else 语句4 使用嵌套if语句时,必须特别注意if与else配对 [补充例题] 有一函数如下, 编一程序,输入
显示全部
相似文档