广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > C语言/C++语言培训 > 正文

C语言的逻辑运算符及其用法_惠州C语言培训

作者:黄君发布时间:2020-12-19分类:C语言/C++语言培训浏览:1234


导读:关系运算符只是测试左右两个值之间的关系(把它们相互比较),逻辑运算符(logical operator)则是把多个关系表达式组合起来,判断最终的结果是“真”还是“假”。因而,有时候逻辑运算符又称为复合关系运算符(compound relation operator)。

关系运算符只是测试左右两个值之间的关系(把它们相互比较),逻辑运算符(logical operator)则是把多个关系表达式组合起来,判断最终的结果是“真”还是“假”。因而,有时候逻辑运算符又称为复合关系运算符(compound relation operator)。C语言提供了 3 种逻辑运算符,如下表所示。

表 1:C语言的逻辑运算符说明
运算符含义说明示例
&&逻辑与运算符两边的表达式都成立(真),返回 1;只要有一个不成立(假),返回 0(2==3)&&(3==3) 的值为 0
(2<3)&&(3==3) 的值为 1
||逻辑或运算符两边的表达式只要有一个成立,返回 1;只有两边的表达式都不成立时,返回 0(2==3)||(3==3) 的值为 1
(2<1)||(2==3) 的值为 0
逻辑非运算符后边的表达式成立(真),返回 0,否则返回 1!(2==3) 的值为 1
!(2<3) 的值为 0


对于逻辑运算符优先级的问题,逻辑非!的优先级最高,不仅优先于关系运算符,甚至优先于算术运算符,其次是逻辑与&&,逻辑或||优先级最低,而逻辑与&&和逻辑或||的优先级低于关系运算符。当一个判断条件表达式中同时出现关系运算符、逻辑运算符、算术运算符时,其运算优先关系如下:

( ) → 函数、! → *、/、% → +、- → <、>、!=、<=、>= → &&、||


图中展示了一个复杂条件表达式的运算顺序。

复杂条件表达式的运算顺序
复杂条件表达式的运算顺序


下图分别展示了逻辑与、逻辑或、逻辑非的饼图及运算规则。

逻辑与、逻辑或、逻辑非的饼图及运算规则
逻辑与、逻辑或、逻辑非的饼图及运算规则
逻辑与、逻辑或、逻辑非的饼图及运算规则


下表分别展示了逻辑运算符混合运算的运算规则和示例。

表 2:逻辑运算符混合运算的运算规则
pq!qp&&!qp||!q!(p&&q)!(p||q)
0010111
0100010
1011110
1100100


表 3:逻辑运算符混合运算的示例
pqmp&&qp||qp&&q||m
5+2>1000000
5+2==1010010
5*2==1001011
5+2<1011111


标签:惠州北大青鸟惠州JAVA培训惠州IT培训惠州软件培训惠州软件开发惠州C语言培训惠州C语言


C语言/C++语言培训排行
标签列表
网站分类
文章归档
最近发表