4-3. 关系运算符与逻辑运算符

  • 学习人数 30K+
  • 适合所有人群学习
avatar
林耿亮

你好编程主讲老师

在算术运算符那一节中,我们学习了以下几种运算符以及它们的优先级。

标记 操作符 类型 优先级
++ -- 自增、自减 后缀 16
++ -- 自增、自减 前缀 15
+ - 正号,负号 单目 15
* / % 乘、除、取余 双目 13
+ - 加、减 双目 12
= 赋值 双目 2

本节中,我们将继续熟悉更多的运算符。

1. 关系运算符

1.1 大于 > 和 小于 <

#include <stdio.h>
int main()
{
    printf("%d\n", 1 > 2);
    printf("%d\n", 1 < 2);
    return 0;
}

大于小于关系运算符示例

表达式结果:
表达式关系成立,表达式结果为真。在C语言中,用1表示真
表达式关系不成立,表达式结果为假。在C语言中,用0表示假

例如:
1 < 2,表达式关系成立,表达式结果为真,即1。
1 > 2,表达式关系不成立,表达式结果为假,即0。

大于、小于关系表现在数轴上,如下图所示。注意,N点为空心。也就是不能取N。

数轴上的大于小于

由于不能取值为N点,因此以下两个表达式均为假。 1 > 1,为假。 1 < 1,为假。

1.2 大于等于 >= 和 小于等于 <=

如果希望可以取值到N点,即N点为实心,那么可以使用大于等于或小于等于运算符。

数轴上的大于等于小于等于

#include <stdio.h>
int main()
{
    printf("%d\n", 1 >= 1);
    printf("%d\n", 1 <= 1);
    return 0;
}

大于等于小于等于关系运算符示例

现在可以取值为N点,因此以下两个表达式均为真。

1 >= 1 //为真
1 <= 1 //为真

下面是一些关系运算符示例:

大于等于:
10 >= 2,真
10 >= 10,真
2 >= 10,假

小于等于:
10 <= 2,假
10 <= 10,真
2 <= 10,真

2. 等于 == 和 不等于 !=

等于运算符以及不等于运算符,用于单纯地判断运算符两边的值是否相等。

由于=等号已经被作为赋值运算符,所以相等在C语言里面用==来表示,而不相等则使用!=

#include <stdio.h>
int main()
{
    printf("%d\n", 10 == 10);
    printf("%d\n", 10 != 10);
    printf("%d\n", 10 == 12);
    printf("%d\n", 10 != 12);
    return 0;
}

等于或不等于示例

10 == 1010等于10,表达式结果为真。
10 != 1010不等于10,表达式结果为假。
10 == 1210等于12,表达式结果为假。
10 != 1210不等于12,表达式结果为真。