首頁(yè)考試吧論壇Exam8視線(xiàn)考試商城網(wǎng)絡(luò)課程模擬考試考友錄實(shí)用文檔求職招聘論文下載
2013中考
法律碩士
2013高考
MBA考試
2013考研
MPA考試
在職研
中科院
考研培訓(xùn) 自學(xué)考試 成人高考
四 六 級(jí)
GRE考試
攻碩英語(yǔ)
零起點(diǎn)日語(yǔ)
職稱(chēng)英語(yǔ)
口譯筆譯
申碩英語(yǔ)
零起點(diǎn)韓語(yǔ)
商務(wù)英語(yǔ)
日語(yǔ)等級(jí)
GMAT考試
公共英語(yǔ)
職稱(chēng)日語(yǔ)
新概念英語(yǔ)
專(zhuān)四專(zhuān)八
博思考試
零起點(diǎn)英語(yǔ)
托?荚
托業(yè)考試
零起點(diǎn)法語(yǔ)
雅思考試
成人英語(yǔ)三級(jí)
零起點(diǎn)德語(yǔ)
等級(jí)考試
華為認(rèn)證
水平考試
Java認(rèn)證
職稱(chēng)計(jì)算機(jī) 微軟認(rèn)證 思科認(rèn)證 Oracle認(rèn)證 Linux認(rèn)證
公 務(wù) 員
導(dǎo)游考試
物 流 師
出版資格
單 證 員
報(bào) 關(guān) 員
外 銷(xiāo) 員
價(jià)格鑒證
網(wǎng)絡(luò)編輯
駕 駛 員
報(bào)檢員
法律顧問(wèn)
管理咨詢(xún)
企業(yè)培訓(xùn)
社會(huì)工作者
銀行從業(yè)
教師資格
營(yíng)養(yǎng)師
保險(xiǎn)從業(yè)
普 通 話(huà)
證券從業(yè)
跟 單 員
秘書(shū)資格
電子商務(wù)
期貨考試
國(guó)際商務(wù)
心理咨詢(xún)
營(yíng) 銷(xiāo) 師
司法考試
國(guó)際貨運(yùn)代理人
人力資源管理師
廣告師職業(yè)水平
衛(wèi)生資格 執(zhí)業(yè)醫(yī)師 執(zhí)業(yè)藥師 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格
基金從業(yè)資格
統(tǒng)計(jì)從業(yè)資格
經(jīng)濟(jì)師
精算師
統(tǒng)計(jì)師
會(huì)計(jì)職稱(chēng)
法律顧問(wèn)
ACCA考試
注冊(cè)會(huì)計(jì)師
資產(chǎn)評(píng)估師
審計(jì)師考試
高級(jí)會(huì)計(jì)師
注冊(cè)稅務(wù)師
國(guó)際內(nèi)審師
理財(cái)規(guī)劃師
美國(guó)注冊(cè)會(huì)計(jì)師
一級(jí)建造師
安全工程師
設(shè)備監(jiān)理師
公路監(jiān)理師
公路造價(jià)師
二級(jí)建造師
招標(biāo)師考試
物業(yè)管理師
電氣工程師
建筑師考試
造價(jià)工程師
注冊(cè)測(cè)繪師
質(zhì)量工程師
巖土工程師
造價(jià)員考試
注冊(cè)計(jì)量師
環(huán)保工程師
化工工程師
咨詢(xún)工程師
結(jié)構(gòu)工程師
城市規(guī)劃師
材料員考試
監(jiān)理工程師
房地產(chǎn)估價(jià)
土地估價(jià)師
安全評(píng)價(jià)師
房地產(chǎn)經(jīng)紀(jì)人
投資項(xiàng)目管理師
環(huán)境影響評(píng)價(jià)師
土地登記代理人
繽紛校園 實(shí)用文檔 英語(yǔ)學(xué)習(xí) 作文大全 求職招聘 論文下載 訪(fǎng)談|游戲
計(jì)算機(jī)等級(jí)考試

2013年計(jì)算機(jī)等考二級(jí)《C語(yǔ)言》復(fù)習(xí)筆記第三章第4節(jié)

 

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

  邏輯運(yùn)算符C語(yǔ)言中提供了三種邏輯運(yùn)算符 && 與運(yùn)算 || 或運(yùn)算 ! 非運(yùn)算 與運(yùn)算符&&和或運(yùn)算符||均為雙目運(yùn)算符。具有左結(jié)合性。 非

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

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

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

  !b==c||d

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

  邏輯運(yùn)算的值

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

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

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

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

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

  雖然C編譯在給出邏輯運(yùn)算值時(shí),以“1”代表“真”,“0 ”代表“假”。 但反過(guò)來(lái)在判斷一個(gè)量是為“真”還是為“假”時(shí),以“0”代表“假”,以非“0”的數(shù)值作為“真”。例如:由于5和3均為非“0”因此5&&3的值為“真”,即為1。

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

  邏輯表達(dá)式邏輯表達(dá)式的一般形式為: 表達(dá)式 邏輯運(yùn)算符 表達(dá)式 其中的表達(dá)式可以又是邏輯表達(dá)式,從而組成了嵌套的情形。例如:(a&&b)&&c根據(jù)邏輯運(yùn)算符的左結(jié)合性,上式也可寫(xiě)為: a&&b&&c 邏輯表達(dá)式的值是式中各種邏輯運(yùn)算的最后值,以“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);

  }

  本例中!x和!y分別為0,!x*!y也為0,故其輸出值為0.由于x為非0,故!!!x的邏輯值為0.對(duì)x|| i && j-3式,先計(jì)算j-3的值為非0,再求i && j-3的邏輯值為1,故x||i&&j-3的邏輯值為 1。

  if語(yǔ)句

  用if語(yǔ)句可以構(gòu)成分支結(jié)構(gòu)。它根據(jù)給定的條件進(jìn)行判斷,以決定執(zhí)行某個(gè)分支程序段。C語(yǔ)言的if語(yǔ)句有三種基本形式。

  1.第一種形式為基本形式 if(表達(dá)式)語(yǔ)句;其語(yǔ)義是:如果表達(dá)式的值為真,則執(zhí)行其后的語(yǔ)句, 否則不執(zhí)行該語(yǔ)句。

  void main(){

  int a,b,max;

  printf("\n input two numbers: ");

  scanf("%d%d",&a,&b);

  max=a;

  if (max

  printf("max=%d",max);

  }

  輸入兩個(gè)整數(shù),輸出其中的大數(shù)。

  scanf("%d%d",&a,&b);

  max=a;

  if (max

  printf("max=%d",max);

  本例程序中,輸入兩個(gè)數(shù)a,b。把a(bǔ)先賦予變量max,再用if語(yǔ)句判別max和b的大小,如max小于b,則把b賦予max.因此max中總是大數(shù),最后輸出max的值。

  2.第二種形式為if-else形式

  if(表達(dá)式)

  語(yǔ)句1;

  else

  語(yǔ)句2;

  其語(yǔ)義是:如果表達(dá)式的值為真,則執(zhí)行語(yǔ)句1,否則執(zhí)行語(yǔ)句2 。

  void main(){

  int a, b;

  printf("input two numbers: ");

  scanf("%d%d",&a,&b);

  if(a>b)

  printf("max=%d\n",a);

  else

  printf("max=%d\n",b);

  }

  輸入兩個(gè)整數(shù),輸出其中的大數(shù)。改用if-else語(yǔ)句判別a,b的大小,若a大,則輸出a,否則輸出b。

  3.第三種形式為if-else-if形式

  前二種形式的if語(yǔ)句一般都用于兩個(gè)分支的情況。 當(dāng)有多個(gè)分支選擇時(shí),可采用if-else-if語(yǔ)句,其一般形式為:

  if(表達(dá)式1)

  語(yǔ)句1;

  else if(表達(dá)式2)

  語(yǔ)句2;

  else if(表達(dá)式3)

  語(yǔ)句3;

  …

  else if(表達(dá)式m)

  語(yǔ)句m;

  else

  語(yǔ)句n;

  其語(yǔ)義是:依次判斷表達(dá)式的值,當(dāng)出現(xiàn)某個(gè)值為真時(shí), 則執(zhí)行其對(duì)應(yīng)的語(yǔ)句。然后跳到整個(gè)if語(yǔ)句之外繼續(xù)執(zhí)行程序。 如果所有的表達(dá)式均為假,則執(zhí)行語(yǔ)句n 。然后繼續(xù)執(zhí)行后續(xù)程序。 if-else-if語(yǔ)句的執(zhí)行過(guò)程如圖3-3所示。

  #include"stdio.h"

  void main(){

  char c;

  printf("input a character: ");

  c=getchar();

  if(c<32)

  printf("This is a control character\n");

  else if(c>='0'&&c<='9')

  printf("This is a digit\n");

  else if(c>='A'&&c<='Z')

  printf("This is a capital letter\n");

  else if(c>='a'&&c<='z')

  printf("This is a small letter\n");

  else

  printf("This is an other character\n");

  }

  本例要求判別鍵盤(pán)輸入字符的類(lèi)別。可以根據(jù)輸入字符的ASCII碼來(lái)判別類(lèi)型。由ASCII碼表可知ASCII值小于32的為控制字符。 在“0”和“9”之間的為數(shù)字,在“A”和“Z”之間為大寫(xiě)字母, 在“a”和“z”之間為小寫(xiě)字母,其余則為其它字符。 這是一個(gè)多分支選擇的問(wèn)題,用if-else-if語(yǔ)句編程,判斷輸入字符ASCII碼所在的范圍,分別給出不同的輸出。例如輸入為“g”,輸出顯示它為小寫(xiě)字符。

  編輯推薦:

  2012年9月計(jì)算機(jī)等級(jí)考試成績(jī)查詢(xún)短信提醒

  2013年上半年計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間預(yù)測(cè)

  2012年計(jì)算機(jī)等級(jí)考試二級(jí)VB重點(diǎn)知識(shí)匯總

文章責(zé)編:renyinan  
看了本文的網(wǎng)友還看了
沒(méi)有相關(guān)文章
文章搜索
版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。