逍遙自在學C語言 | 關系運算符
前言

一、人物簡介
- 第一位閃亮登場,有請今后會一直教我們C語言的老師 —— 自在。

- 第二位上場的是和我們一起學習的小白程序猿 —— 逍遙。

二、構成和表示方式
- 關系運算符的作用是判斷符號兩邊大小的關系
- C語言中的關系運算符主要有六個,如下表所示
| 運算符 | 名稱 | 示例 | 描述 |
|---|---|---|---|
| == | 等于 | a == b | 判斷a是否等于b |
| != | 不等于 | a != b | 判斷a是否不等于b |
| > | 大于 | a > b | 判斷a是否大于b |
| < | 小于 | a < b | 判斷a是否小于b |
| >= | 大于等于 | a >= b | 判斷a是否大于等于b |
| <= | 小于等于 | a <= b | 判斷a是否小于等于b |
- 關系運算符的兩邊可以是變量、數值 或 表達式
?? 變量
a > b
a <= b
?? 數值
5 > 3
20 == a
?? 表達式
a+b > c
a-b <= 6
三、關系運算符的應用
1、運算結果
關系運算符的運算結果為0或者1
-
當條件成立時結果為 1,條件不成立結果則為 0。
-
實例演示
#include <stdio.h>
int main() {
printf("11 > 2 結果為%d\n", 11 > 2);
printf("9 < 3 結果為%d\n", 9 < 3);
return 0;
}
- 運行結果

2、運算符嵌套
-
關系運算符是允許嵌套使用的,運算的結果可以繼續作為關系運算符的一個參數
-
同優先級的關系運算符結合律是從左往右的。

- 實例演示
#include <stdio.h>
int main() {
printf("2 < 3 > 0 結果為 %d\n", 2 < 3 > 0);
printf("3 > 2 > 1 結果為 %d\n", 3 > 2 > 1);
return 0;
}
- 運行結果

?? 因為2 > 3的結果為1,所以2 > 3 > 0等價于1 > 0,輸出的結果為:1
?? 因為3 > 2的結果為1,所以3 > 2 > 1等價于1 > 1,輸出的結果為:0
3、優先級
關系運算符的優先級比上篇文中中提到講解的算術運算符優先級低,另外關系運算符之間也有優先級。
-
高優先級: <、 <=、>、>=
-
低優先級: ==、!=
-
實例演示
#include <stdio.h>
int main() {
printf("2 < 3 == 1 結果為 %d\n", 2 < 3 == 1);
printf("1 == 3 > 1 結果為 %d\n", 1 == 3 > 1);
return 0;
}
在看運行結果前,我們先分析一下。
- 假如
2 < 3先運算,結果為1,則2 < 3 == 1等效于1 == 1, 輸出的結果為1 - 假如
3 == 1先運算,結果為0,則2 < 3 == 1等效于2 < 0, 輸出的結果為0
那么實際的運行結果如何呢?


我們接著分析
- 因為
>的優先級大于==,所以先運算3 > 1,結果1,則1 == 3 > 1等效于1 == 1, 輸出的結果為1
小結
通過本文的講解,我們學會了6種運算符的使用方法及優先級關系,下一篇文章,我們將講解邏輯運算符。

浙公網安備 33010602011771號