Menu Close

C语言运算符:关系运算符和逻辑运算符

运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。我们以前已经讲过算术运算符,赋值运算符,这一节讲关系运算符和逻辑运算符。

1.关系运算符

关系运算符也叫比较运算符,像数学中10 > 9、1 < x < 5 等等,表示一种判定关系,给出的这种关系可能是正确的也可能是错误的,例如也可以有“1 > 2”这种判定,但这是错误的判断。
计算机中也支持这种判定,但结果只有两种,要么判断正确要么判断错误。
正确则称为“真”,错误则称为“假”。任意给出这样一个判定,要么为真要么为假并不会出现其他情况,并且也不会出现相同的判定在一种情况下为真、另一种情况下为假的情况。

 

操作符 描述 举例

(a 和 b,  a = 10 , b = 11)

== 检查两个操作数的值是否相等,如果相等则条件为真。 a == b, 假
!= 检查两个操作数的值是否相等,如果不相等则条件为真。 a != b, 真
> 检查左操作数的值是否大于右操作数的值,如果是则条件为真。 a > b, 假
< 检查左操作数的值是否小于右操作数的值,如果是则条件为真。 a < b, 真
>= 检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。 a >= b, 假
<= 检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。 a <= b, 真

 

例1.关系运算符

#include <stdio.h>

int main() {

int a = 10, b = 20, result;

// Equal
result = (a==b);
printf("(a == b) = %d \n",result);

// less than
result = (a<b);
printf("(a < b) = %d \n",result);

// greater than
result = (a>b);
printf("(a > b) = %d \n",result);

// less than equal to
result = (a<=b);
printf("(a <= b) = %d \n",result);

return 0;

}

结果

(a == b) = 0
(a < b) = 1 (a > b) = 0
(a <= b) = 1

Process returned 0 (0x0) execution time : 0.040 s
Press any key to continue.

在 C 语言中,真是除零以外的任何值。假为零。

2. 逻辑运算符

C语言支持下列逻辑运算符

Operator Description Example

(a 和 b,  a = 1 , b = 0)

&& 称为逻辑与运算符。如果两个操作数都非零,则条件为真。 a && b, 结果0
|| 称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。 a || b, 结果真
! 称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。 !a, 结果0

例2. 逻辑运算符

#include <stdio.h>

int main() {

int a = 1, b = 0, result;

// And
result = (a && b);
printf("a && b = %d \n",result);

// Or
result = (a || b);
printf("a || b = %d \n",result);

// Not
result = !a;
printf("!a = %d \n",result);

return 0;

}

运行结果

a && b = 0
a || b = 1
!a = 0

Process returned 0 (0x0) execution time : 0.032 s
Press any key to continue.
除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Leave the field below empty!

Posted in C语言教程

Related Posts