运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。我们以前已经讲过算术运算符,赋值运算符,这一节讲关系运算符和逻辑运算符。
1.关系运算符
关系运算符也叫比较运算符,像数学中10 > 9、1 < x < 5 等等,表示一种判定关系,给出的这种关系可能是正确的也可能是错误的,例如也可以有“1 > 2”这种判定,但这是错误的判断。
计算机中也支持这种判定,但结果只有两种,要么判断正确要么判断错误。
正确则称为“真”,错误则称为“假”。任意给出这样一个判定,要么为真要么为假并不会出现其他情况,并且也不会出现相同的判定在一种情况下为真、另一种情况下为假的情况。
操作符 | 描述 | 举例
( |
---|---|---|
== | 检查两个操作数的值是否相等,如果相等则条件为真。 | 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 , 结果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.
除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!