逻辑运算符,用来进行逻辑运算。C语言中提供了3个逻辑运算符,分别是:
“!”,逻辑非,如:!a,若a为真,刚!a为假,否则!a为真。 (如:!0,因0为假,则!0为真,同理,!1,1为真,则!1为假)
“&&”逻辑与,如:a&&b,若a,b均为真,刚a&&b为真,否则a&&b为假。
(也就是a,b中有一个为假,即为假)
“||”逻辑或,如a||b,若a,b均为假,则a||b为假,否则a||b为真。 (也就是a,b中有一个为真,即为真)
使用逻辑运算符,应注意优先级和结合性:
1.逻辑运算符的优先次序为:! →(高于)&&
→(高于)||。
2.“!”的优先级高于算术运算符,&&和||的优先级低于算术运算符和关系运算符,高于赋值运算符。
3.!的结合方向是自右向左,
&&和||的结合方向是自左向右。
须注意的是:数学表达式 :
a > b > c,在C语言中并不能这样表达,正确的表达方式为:
a > b && b > c;
逻辑表达式:用逻辑运算符将运算对千克连接起来的式子称为逻辑表达式。逻辑表达式的值也有两种:
“真”或“假”,在C语言中用1表示“真“,用0表示”假“。
在对逻辑表达式中的量进行判断时,以非0代表”真“,以0代表”假“。
例如:
int a = 15, b = 5;
!a // 表达式的值为:0
!(b == 13) // 1
a >= 1 && a <= 31 // 1
(b >= 0) && (b < 2) // 0
a || a >12 // 1
(b < 3)||(b > 5) // 0