文档介绍:第3章分支程序设计
关系表达式和逻辑表达式
如果语句(if语句)
(switch语句)
分支程序设计应用实例
本章小结
通常情况下,计算机要根据不同的条件来执行不同的程序段,即判断某个变量或表达式的值,以决定执行哪些语句或跳过哪些语句。比如,根据学生的分数来评定优、良、及格、不及格等级,如60分以下为不及格,90分以上为优等。
这种结构通常称之为选择结构,因为按不同的条件来确定程序不同的转向,所以也称之为分支结构。
关系表达式和逻辑表达式
关系运算
关系运算就是对两个数据按它们值的大小进行比较的运算。
判断它们是否符合给定条件:
若符合,则结果为1(即“真”);
否则结果为0(即“假”)。
C语言提供了6种关系运算符,如表6-1所示。
运算符
含义
优先级
<
小于
6
<=
小于或等于
>
大于
>=
大于或等于
==
等于
7
!=
不等于
C语言关系运算符的优先级如下:
关系运算符被分为两组不同的优先级
==、!= 优先级低于<、<=、>、>=
关系运算符的优先级低于算术运算符。
关系运算符的优先级高于赋值运算符。例如:
a > b + 3 等价于 a > ( b +3 )
a = b > 3 等价于 a = ( b >3 )
a != b > 3 等价于 a != ( b > 3 )
当相同优先级的关系运算符同时出现时,从左向右进行运算。例如:
a != b == c 等价于 ( a != b ) == c
用关系运算符连接两个表达式组成的式子称为关系表达式。下面的关系表达式都是合法的:
①a>b ②1==1 ③1==0
在C语言中表达式为真时,其值为1;表达式为假时,,所有非0值也都认为真,只有0被认为是假。如:
x=(3>2); 值为1 x=(3<2); 值为0
逻辑运算
C语言有三种逻辑运算符,如表3-2所示。
运算符
含义
优先级
结合方向
!
逻辑非
2
右
&&
逻辑与
11
左
||
逻辑或
12
左
说明:
①逻辑运算符中,“&&”和“||”是双目运算符,要求有两个运算量;“!”是单目运算符。
②下面是C语言逻辑运算符的优先级说明。
1) “!”高于“&&”,“&&”高于“||”。
2) “!”高于算术运算符,而“&&”和“||”低于关系运算符。
③假设A和B是两个表达式,下面对逻辑运算进行说明。
1) A && B 若A、B均为真,
则“A && B”值为真,否则为假。
2) A || B 若A、B均为假,
则“A || B值”为假,否则为真。
3)! A 若A为真,
则“!A”为假;否则为真。
看下面的例子:
( 3 < 2 ) && ( 7 > 5 ) 值:0 只有&& 右面的子表达式为真
( 3 < 2 ) || ( 7 > 5 ) 值:1 只要求有一个子表达式为真
! ( 3 < 2 ) 值:1 子表达式为假。