C語言基礎丨運算子之關係運算子(三)

2021-10-17 11:41:31 字數 1710 閱讀 3431

c語言提供了以下關係運算子:

關係運算子都是雙目運算子,其結合性均為左結合。關係運算子的優先順序低於算術運算子,高於賦值運算子。在六個關係運算子中,、>=的優先順序相同,高於==和!=,==和!=的優先順序相同。

在c語言中,有的運算子有兩個運算元,例如 10+20,10和20都是運算元,+ 是運算子。我們將這樣的運算子稱為雙目運算子。同理,將有乙個運算元的運算子稱為單目運算子,將有三個運算元的運算子稱為三目運算子。

常見的雙目運算子有 +、-、*、/ 等,單目運算子有 ++、-- 等,三目運算子只有乙個,就是 ? :。

由關係運算子組成的式子為關係表示式,如 a>b 即為關係表示式,在 c 語言中,同邏輯表示式一樣,關係表示式的值也為邏輯值,即布林型(bool),取值為真或假。

算術、邏輯、關係、賦值運算子的優先順序順序為:

邏輯非 !>算術》關係》邏輯與&&、邏輯或||>賦值=

例如:

int a=3,b=5;

則有:

a>b:邏輯假,其值為 0;

a>=b:邏輯假,其值為 0;

aa<=b:邏輯真,其值為 1;

a==b:邏輯假,其值為 0;

a!=b:邏輯真,其值為 1;

關係運算子的兩邊可以是變數、資料或表示式,例如:

a+b>c-d 

x>3/2

'a'+1*j==k+1

關係運算子也可以巢狀使用,例如:

a>(b>c)

a!=(c==d)

關係運算子的運算結果只有 0 或 1。當條件成立時結果為 1,條件不成立結果為 0。例如:

5>0 成立,其值為 1;

34-12>100 不成立,其值為 0;

(a=3)>(b=5) 由於3>5不成立,故其值為 0。

我們將運算結果 1 稱為「真」,表示條件成立,將 0 稱為「假」,表示條件不成立。

下面的**會將關係運算子的結果輸出:

執行結果:

1, 0

1, 1

0, 0

對於含多個關係運算子的表示式,如 k==j==i+5,根據運算子的左結合性,先計算k==j,該式不成立,其值為0,再計算0==i+5,也不成立,故表示式值為0。

如果你想更好的提公升你的程式設計能力,學好c語言c++程式設計!彎道超車,快人一步!

c語言c++學習企鵝圈子程式設計學習書籍:

C語言基礎丨運算子之位運算子(六)

對於更多緊湊的資料,c 程式可以用獨立的位或多個組合在一起的位來儲存資訊。檔案訪問許可就是乙個常見的應用案例。位運算子允許對乙個位元組或更大的資料單位中獨立的位做處理 可以清除 設定,或者倒置任何位或多個位。也可以將乙個整數的位模式 bit pattern 向右或向左移動。按位與 按位或 按位異或 ...

C語言基礎丨運算子之賦值運算子(五)

賦值操作是程式設計中最常用的操作之一,c 語言共提供了 11 個賦值運算子,均為二元運算子,其中僅有乙個為基本賦值運算子 其餘 10 個均是復合賦值運算子,即 1 簡單賦值運算子 用法 變數識別符號 表示式 作用 將乙個資料 常量或表示式 賦給乙個變數 左側必須是變數,不能是常量或表示式 注意 1 ...

C語言基礎丨運算子之算術運算子(二)

算術運算子按運算元個數可分為一元運算子 含乙個運算元 和二元運算子 含兩個運算元 一元運算子的優先順序一般高於二元運算子。一元運算子 正號 負號 增1 減1 自增 在原來基礎上 1。例如 intnum 10 num printf num d num 注意 當printf num d num 這種寫法...