首页 理论教育 C语言中的逻辑运算符和表达式效果

C语言中的逻辑运算符和表达式效果

时间:2023-11-23 理论教育 版权反馈
【摘要】:用逻辑运算符将关系表达式或逻辑量连接起来的式子叫逻辑表达式。C语言规定任何非0值都被视为逻辑真,而0视为逻辑假,因此逻辑运算符也可以连接数值型表达式。表2-9逻辑运算符及分类在逻辑表达式中,并不是所有的逻辑运算符都被执行。>算术运算符>关系运算符>逻辑运算符的&&和||>赋值运算符当表达式比较复杂时,建议使用小括号使语句容易理解。

C语言中的逻辑运算符和表达式效果

逻辑运算符用来实现逻辑判断功能,C语言中的逻辑运算符只有3个,即逻辑与(&&)、逻辑或(||)和逻辑非(!)。用逻辑运算符将关系表达式或逻辑量连接起来的式子叫逻辑表达式。逻辑表达式的值是一个逻辑值,用1(逻辑真)或0(逻辑假)表示。C语言规定任何非0值都被视为逻辑真,而0视为逻辑假,因此逻辑运算符也可以连接数值型表达式。例如,3&&4,由于3和4非0,其逻辑值都为1,因此相与的结果为1。逻辑运算符的分类及含义如表2-9所示。

表2-9 逻辑运算符及分类

(1)在逻辑表达式中,并不是所有的逻辑运算符都被执行。

例如,表达式a&&b&&c,如果a的值为假,则整个表达式的值就为假,就不用再判断b和c的值,只有a为真时,才需要判断b的值,只有当a和b都为真时,才判断c的值。

再如,表达式a||b||c,如果a的值为真,则整个表达式的值就为真,不用再判断b和c的值,只有a为假时,才需要判断b的值,只有当a和b都为假时,才判断c的值。

(2)当一个复杂的表达式中包括算术运算符、关系运算符、逻辑运算符和赋值运算符时,用>表示高于,则它们之间的优先级如下:

!>算术运算符>关系运算符>逻辑运算符的&&和||>赋值运算符

(3)当表达式比较复杂时,建议使用小括号使语句容易理解。例如,a>b&&x>y,可写为(a>b)&&(x>y)。a+b>c&&x+y<z可以写为((a+b)>c)&&((x+y)<z)。(www.xing528.com)

【例2-17】程序li2_4_4。

【程序说明】

闰年的条件是符合下面二者之一。

(1)能被4整除(year%4==0),但不能被100整除(year%100!=0),这两个条件必须同时满足,所以是逻辑与的关系,表示为:(year%4==0)&&(year%100!=0)。

(2)能被400整除(year%400==0)。

这两个条件只要满足一个就是闰年,所以它们之间用或运算(||)。为了使表达式的关系清晰,阅读方便,使用必要的小括号((year%4==0)&&(year%100!=0))||(year%400==0)。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈