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

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

 

  do-while語句

  do-while語句的一般形式為:

  do

  語句;

  while(表達式);

  其中語句是循環(huán)體,表達式是循環(huán)條件。

  do-while語句的語義是:

  先執(zhí)行循環(huán)體語句一次, 再判別表達式的值,若為真(非0)則繼續(xù)循環(huán),否則終止循環(huán)。

  do-while語句和while語句的區(qū)別在于do-while是先執(zhí)行后判斷,因此do-while至少要執(zhí)行一次循環(huán)體。而while是先判斷后執(zhí)行,如果條件不滿足,則一次循環(huán)體語句也不執(zhí)行。

  while語句和do-while語句一般都可以相互改寫。

  void main(){

  int a=0,n;

  printf("\n input n: ");

  scanf("%d",&n);

  do printf("%d ",a++*2);

  while (--n);

  }

  在本例中,循環(huán)條件改為--n,否則將多執(zhí)行一次循環(huán)。這是由于先執(zhí)行后判斷而造成的。

  對于do-while語句還應(yīng)注意以下幾點:

  1.在if語句,while語句中, 表達式后面都不能加分號, 而在 do-while語句的表達式后面則必須加分號。

  2.do-while語句也可以組成多重循環(huán),而且也可以和while語句相互嵌套。

  3.在do和while之間的循環(huán)體由多個語句組成時,也必須用{}括起來組成一個復(fù)合語句。

  4.do-while和while語句相互替換時,要注意修改循環(huán)控制條件。

  for語句

  for語句是C語言所提供的功能更強,使用更廣泛的一種循環(huán)語句。其一般形式為:

  for(表達式1;表達式2;表達3)

  語句;

  表達式1 通常用來給循環(huán)變量賦初值,一般是賦值表達式。也允許在for語句外給循環(huán)變量賦初值,此時可以省略該表達式。

  表達式2 通常是循環(huán)條件,一般為關(guān)系表達式或邏輯表達式。

  表達式3 通�?捎脕硇薷难h(huán)變量的值,一般是賦值語句。

  這三個表達式都可以是逗號表達式, 即每個表達式都可由多個表達式組成。三個表達式都是任選項,都可以省略。

  一般形式中的“語句”即為循環(huán)體語句。for語句的語義是:

  1.首先計算表達式1的值。

  2.再計算表達式2的值,若值為真(非0)則執(zhí)行循環(huán)體一次, 否則跳出循環(huán)。

  3.然后再計算表達式3的值,轉(zhuǎn)回第2步重復(fù)執(zhí)行。在整個for循環(huán)過程中,表達式1只計算一次,表達式2和表達式,3則可能計算多次。循環(huán)體可能多次執(zhí)行,也可能一次都不執(zhí)行。

  void main(){

  int n,s=0;

  for(n=1;n<=100;n++)

  s=s+n;

  printf("s=%d\n",s);

  }

  用for語句計算s=1+2+3+…+99+100

  int n,s=0;

  for(n=1;n<=100;n++)

  s=s+n;

  printf("s=%d\n",s);

  本例for語句中的表達式3為n++,實際上也是一種賦值語句,相當于n=n+1,以改變循環(huán)變量的值。

  void main(){

  int a=0,n;

  printf("\n input n: ");

  scanf("%d",&n);

  for(;n>0;a++,n--)

  printf("%d ",a*2);

  }

  用for語句修改例題。從0開始,輸出n個連續(xù)的偶數(shù)。

  int a=0,n;

  printf("\n input n: ");

  scanf("%d",&n);

  for(;n>0;a++,n--)

  printf("%d ",a*2);

  本例的for語句中,表達式1已省去,循環(huán)變量的初值在for語句之前由scanf語句取得,表達式3是一個逗號表達式,由a++,n-- 兩個表達式組成。每循環(huán)一次a自增1,n自減1。a的變化使輸出的偶數(shù)遞增,n的變化控制循次數(shù)。

  在使用for語句中要注意以下幾點:

  1.for語句中的各表達式都可省略,但分號間隔符不能少。如:for(;表達式;表達式)省去了表達式1.for(表達式;;表達式)省去了表達式2。

  for(表達式;表達式;)省去了表達式3.for(;;)省去了全部表達式。

  2.在循環(huán)變量已賦初值時,可省去表達式1,如例3.27即屬于這種情形。如省去表達式2或表達式3則將造成無限循環(huán), 這時應(yīng)在循環(huán)體內(nèi)設(shè)法結(jié)束循環(huán)。例題即屬于此情況。

  void main(){

  int a=0,n;

  printf("\n input n: ");

  scanf("%d",&n);

  for(;n>0;)

  { a++;n--;

  printf("%d ",a*2);

  }

  }

  本例中省略了表達式1和表達式3,由循環(huán)體內(nèi)的n--語句進行循環(huán)變量n的遞減,以控制循環(huán)次數(shù)。

  void main(){

  int a=0,n;

  printf("\n input n: ");

  scanf("%d",&n);

  for(;;){

  a++;n--;

  printf("%d ",a*2);

  if(n==0)break;

  }

  }

  本例中for語句的表達式全部省去。由循環(huán)體中的語句實現(xiàn)循環(huán)變量的遞減和循環(huán)條件的判斷。當n值為0時,由break語句中止循環(huán),轉(zhuǎn)去執(zhí)行for以后的程序。在此情況下,for語句已等效于while( 1)語句。如在循環(huán)體中沒有相應(yīng)的控制手段,則造成死循環(huán)。

上一頁  1 2 3 4 5 6  下一頁

  編輯推薦:

  2012年9月計算機等級考試成績查詢短信提醒

  2013年上半年計算機等級考試報名時間預(yù)測

  2012年計算機等級考試二級VB重點知識匯總

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