逻辑运算符与逻辑表达式
三个逻辑运算符: && || !
且(与) 或 否定(非)
格式如下
表达式
1
&&
表达式
2
“与”:两表达式的值都为真(成立),结果为 1,否则为 0
表达式
1
||
表达式
2
“或”:两表达式的值只要有一个真,结果为1。否则为0。
!
表达式
“非”:以表达式的值的否定为结果
例: 数学公式“ x<3 或 x >5” 写作 x<3 || x>5
思考题:数学公式“ 3≤ x ≤ 5” 写作 x>=3 && x<=5,上式为什么不能直接写成 3<= x <= 5 ?
答:如果在源程序中写成 3<= x <=5,会被解释为
( 3<= x ) <= 5,其值为:
3 <= x 的值为 0 或 1 ,0 <= 5 和 1 <= 5 的值都是 1。
逻辑表达式计算结果都是整型的 0 或 1。
否定的优先级同其他一元运算符;
&& 优先级高于 ||,低于关系运算符
例:根据运算符优先级关系,逻辑表达式:
(((x+3)>(y+z)) && (y<10)) || (y>12)
写为下面形式意义不变
x + 3 > y + z && y < 10 || y > 12
为方便理解最好加上括号