华南俳烁实业有限公司

考試首頁 | 考試用書 | 培訓(xùn)課程 | 模擬考場 | 考試論壇  
全國  |             |          |          |          |          |         
  當(dāng)前位置:計算機等級 > 二級考試 > C語言程序設(shè)計 > C語言輔導(dǎo) > 文章內(nèi)容
  

全國計算機等級考試二級C語言入門教程(49)

中華IT學(xué)院   【 】  [ 2016年1月15日 ]

  邏輯運算符和表達(dá)式

  邏輯運算符C語言中提供了三種邏輯運算符 && 與運算|| 或運算! 非運算 與運算符&&和或運算符||均為雙目運

  算符。具有左結(jié)合性。 非

  運算符!為單目運算符,具有右結(jié)合性。邏輯運算符和其它運算符優(yōu)先級的關(guān)系可表示如下:

  按照運算符的優(yōu)先順序可以得出:

  a>b && c>d等價于(a>b) && (c>d)

  !b==c||d

  a+b>c && x+yc) && ((x+y)

  邏輯運算的值

  邏輯運算的值也為“真”和“假”兩種,用“1”和“0 ”來表示。其求值規(guī)則如下:

  1.與運算&&參與運算的兩個量都為真時,結(jié)果才為真,否則為假。例如,5>0 && 4>2,由于 5>0為真,4>2也為真,相

  與的結(jié)果也為真。

  2.或運算||參與運算的兩個量只要有一個為真,結(jié)果就為真。 兩個量都為假時,結(jié)果為假。例如:5>0||5>8,由于 5>0

  為真,相或的結(jié)果也就為真

  3.非運算!參與運算量為真時,結(jié)果為假;參與運算量為假時,結(jié)果為真。

  例如:!(5>0)的結(jié)果為假。

  雖然C編譯在給出邏輯運算值時,以“1”代表“真”,“0 ”代表“假”。 但反過來在判斷一個量是為“真”還是

  為“假”時,以“0”代表“假”,以非“0”的數(shù)值作為“真”。例如:由于5和3均為非“0”因此5&&3的值為“真”,

  即為1。

  又如:5||0的值為“真”,即為1。

  邏輯表達(dá)式邏輯表達(dá)式的一般形式為: 表達(dá)式 邏輯運算符 表達(dá)式 其中的表達(dá)式可以又是邏輯表達(dá)式,從而組成了

  嵌套的情形。例如:(a&&b)&&c根據(jù)邏輯運算符的左結(jié)合性,上式也可寫為: a&&b&&c 邏輯表達(dá)式的值是式中各種邏

  輯運算的最后值,以“1”和“0”分別代表“真”和“假”。

  void main(){

  char c='k';

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

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

  printf("%d,%d\n",!x*!y,!!!x);

  printf("%d,%d\n",x||i&&j-3,i

  printf("%d,%d\n",i==5&&c&&(j=8),x+y||i+j+k);

  } char c='k';

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

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

  printf("%d,%d\n",!x*!y,!!!x);

  printf("%d,%d\n",x||i&&j-3,i

  printf("%d,%d\n",i==5&&c&&(j=8),x+y||i+j+k);

  本例中!x和!y分別為0,!x*!y也為0,故其輸出值為0。由于 x為非0,故!!!x的邏輯值為0。對x|| i && j-3式,

  先計算 j-3的值為非0,再求 i && j-3的邏輯值為 1,故 x||i&&j-3的邏輯值為 1。對 i

  1,而x

  由兩個與運算組成,所以整個表達(dá)式的值為0。對于式x+ y||i+j+k 由于x+y的值為非0,故整個或表達(dá)式的值為1。

分享到:
本文糾錯】【告訴好友】【打印此文】【返回頂部
將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動訪問考試網(wǎng) | 復(fù)制本頁地址,傳給QQ/MSN上的好友 | 申請鏈接 | 意見留言 TOP
關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
Copyright © 2007-2013 中華考試網(wǎng)(Examw.com) All Rights Reserved
祁门县| 建水县| 嵊州市| 杂多县| 玛多县| 油尖旺区| 海林市| 平罗县| 湟中县| 贺州市| 苍南县| 本溪| 新干县| 桃园市| 太康县| 三都| 萝北县| 龙山县| 东丽区| 和林格尔县| 克拉玛依市| 西安市| 霍林郭勒市| 徐闻县| 元阳县| 岳普湖县| 辽源市| 南皮县| 镇远县| 增城市| 于都县| 任丘市| 威远县| 延吉市| 安塞县| 岱山县| 临夏县| 万宁市| 贺兰县| 西乌珠穆沁旗| 冀州市|