<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            C語言

            C語言關系運算符

            時間:2025-03-19 15:32:03 C語言 我要投稿
            • 相關推薦

            C語言關系運算符

              if 的判斷條件中使用了<=、>、!=等符號,它們專門用在判斷條件中,讓程序決定下一步的操作,稱為關系運算符。下面是小編分享的C語言關系運算符,歡迎大家參考!

              關系運算符在使用時,它的的兩邊都會有一個表達式,比如變量、數值、加減乘除運算等,關系運算符的作用就是判明這兩個表達式的大小關系。注意,是判明大小關系,不是其他關系。

              C語言提供了以下關系運算符:

              關系運算符都是雙目運算符,其結合性均為左結合。關系運算符的優先級低于算術運算符,高于賦值運算符。在六個關系運算符中,<、<=、>、>=的優先級相同,高于==和!=,==和!=的優先級相同。

              在C語言中,有的運算符有兩個操作數,例如 10+20,10和20都是操作數,+ 是運算符。我們將這樣的運算符稱為雙目運算符。同理,將有一個操作數的運算符稱為單目運算符,將有三個操作數的運算符稱為三目運算符。

              常見的雙目運算符有 +、-、*、/ 等,單目運算符有 ++、-- 等,三目運算符只有一個,就是 ? :,我們將在《C語言條件運算符》中詳細介紹。

              關系運算符的兩邊可以是變量、數據或表達式,例如:

              1) a+b > c-d

              2) x > 3/2

              3) 'a'+1 < c

              4) -i-5*j == k+1

              關系運算符也可以嵌套使用,例如:

              1) a > (b > c)

              2) a != (c == d)

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

              5>0 成立,其值為 1;

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

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

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

              下面的代碼會將關系運算符的結果輸出:

              #include <stdio.h>

              int main(){

              char c='k';

              int i=1, j=2, k=3;

              float x=3e+5, y=0.85;

              int result_1 = 'a'+5<c, result_2 = x-5.25<=x+y;

              printf( "%d, %d ", result_1, -i-2*j>=k+1 );

              printf( "%d, %d ", 1<j<5, result_2 );

              printf( "%d, %d ", i+j+k==-2*j, k==j==i+5 );

              return 0;

              }

              運行結果:

              1, 0

              1, 1

              0, 0

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

              需要提醒的是,==才表示等于,而=表示賦值,大家要注意區分,切勿混淆。

              再談 if 語句的判斷條件

              if 語句的判斷條件中不是必須要包含關系運算符,它可以是賦值表達式,甚至也可以是一個變量,例如:

              //情況①if(b){ //TODO:}//情況②if(b=5){ //情況① //TODO:}

              都是允許的。只要整個表達式的值為非0,條件就成立。

              上面兩種情況都是根據變量 b 的最終值來判斷的,如果 b 的值為非0,那么條件成立,否則不成立。

              又如,有程序段:

              if(a=b) printf("%d",a);else printf("a=0");

              意思是,把 b 的值賦予 a,如果為非0則輸出該值,否則輸出“a=0”字符串。這種用法在后面的程序中會經常出現。

              【拓展】

              1) 與運算(&&)

              參與運算的兩個表達式都為真時,結果才為真,否則為假。例如:

              5&&0

              5為真,0為假,相與的結果為假,也就是 0。

              (5>0) && (4>2)

              5>0 的結果是1,為真,4>2結果是1,也為真,所以相與的結果為真,也就是1。

              2) 或運算(||)

              參與運算的兩個表達式只要有一個為真,結果就為真;兩個表達式都為假時結果才為假。例如:

              10 || 0

              10為真,0為假,相或的結果為真,也就是 1。

              (5>0) || (5>8)

              5>0 的結果是1,為真,5>8 的結果是0,為假,所以相或的結果為真,也就是1。

              3) 非運算(!)

              參與運算的表達式為真時,結果為假;參與運算的表達式為假時,結果為真。例如:

              !0

              0 為假,非運算的結果為真,也就是 1。

              !(5>0)

              5>0 的結果是1,為真,非運算的結果為假,也就是 0。

            【C語言關系運算符】相關文章:

            C語言輔導:C語言運算符表06-17

            C語言賦值運算符05-31

            C語言條件運算符02-25

            C語言的條件運算符12-19

            C語言中的運算符03-07

            c語言算術運算符07-23

            C語言邏輯運算符02-07

            C語言復合賦值運算符05-12

            C語言入門知識:運算符07-27

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看