if和while语句使用关系表达式作为测试条件,有时需要要把多个表达式连接在一起使用。例如编写一个程序,判断字符串中是否包含‘a’或‘b’字符,这时可以用逻辑运算符判断。
C语言中常见的逻辑运算符如下:
规则如下,表达式1和表达式2是两个简单的表达式,则:
(1)当且仅当表达式1和表达式2同时为真时,表达式1 && 表达式2才为真。
(2)如果表达式1或表达式2为真,则表达式1 || 表达式2为真。
(3)如果表达式1为假,则!表达式1就为真。
10 > 8 && 20 > 10,两个表达式都为真,与关系为真。
10 > 8 || 2 > 10,只有一个表达式为真,或关系为真。
!(10 > 5),10 > 5为真,但!真为假。
在C99标准中新增了可以替代逻辑运算符的拼写。
!的优先级最高,其次是&&优先级次之,||最低。
举例来说,表示分数值的范围0到100,可以采用:
score >=0 && score <=100
不能使用数学写法:
0 <=score <=100
还可以采用范围测试一个字母是否是小写或大写字母,如下:
ch >=‘a’ && ch <=‘z’