逻辑运算和逻辑表达式

本文详细介绍了C语言中的逻辑运算符包括&&、||和!,并提供了相关示例来说明它们的含义和使用规则。逻辑表达式的值仅为真(1)或假(0)。此外,还讲解了运算符的优先级和结合性,以及在C中非零值被视为真的特性。同时,强调了在求解逻辑表达式时需要注意的事项,如短路求值等。
摘要由CSDN通过智能技术生成

     C提供的逻辑运算符共有以下3种

运算符

含义

举例

运算规则

&&

逻辑与

a&&b

若a、b全为真,结果为真

否则,结果为假。

||

逻辑或

a||b

若a、b全为假,结果为假

否则,结果为真。

!

逻辑非

!a

若a为真,结果为假

否则,结果为真。

     用逻辑运算符把操作数连接起来的式子称为逻辑表达式。其值仅可能为真(1)或假(0)。

例6、    !(x<3)         ~  真(1),当x≥3时

                                   假(0),其他情况

例7、     (x<3)||(x>=10)    ~假(0),当x∈[3,10)

                                           真(1),其他情况

例8、假设a<c,         (a<=b)&&(b<=c)     ~真(1),当b∈[a,c]

                                                                    假(0),其他情况

逻辑运算符的优先级和结合性如下表所示。由此可以看出:

运算符

优先级

结合性

!

自右至左

算术

关系

&&

 

自左至右

||

自左至右

赋值

&&的优先级高于||,!最高

算术运算符、关系运算符的优先级高于&&、||。

赋值运算符的优先级低于&&、||。

&&、||的结合性是自左向右

求解逻辑表达式应注意问题

1、在C中,任何一个非零数据都被认为是真的。

假设 a=2,b=3,      !a       的值为0

                                 4&&0||2 的值为1

                                   !0              的值为1

2、&&、||要求先对左侧操作数求值,而且一旦能够确定表达式的值就立即停止求解过程。

① (x!=0)&&(1/x==y)

② int x=1;     (2>3)&&(x=5)

常用的关系表达式和逻辑表达式

1、判别整数n能否被7整除的表达式     n%7==0

2、判别整数n是否为偶数的表达式       n%2==0

3、判别变量x的值是否介于a、b之间的表达式    x>=a && x<=b

4、判别字符变量ch是字母的表达式    (ch>=’a’&& ch<=’z’)||(ch>=’A’&& ch<=’Z’)

5、判别年份year是否为闰年的表达式   

          (year%4==0 && year%100!=0) || year%400==0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值