华南俳烁实业有限公司

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

計(jì)算機(jī)二級(jí)C語(yǔ)言考點(diǎn)解析:循環(huán)語(yǔ)句和循環(huán)函數(shù)

中華IT學(xué)院   【 】  [ 2017年9月5日 ]

  循環(huán)語(yǔ)句和循環(huán)函數(shù)

  Turbo C 2.0提供三種基本的循環(huán)語(yǔ)句: for語(yǔ)句、while語(yǔ)句和do-while語(yǔ)句。

  一、循環(huán)語(yǔ)句

  (一)、for循環(huán) 它的一般形式為:

  for(<初始化>;<條件表過式>;<增量>)

  語(yǔ)句;

  初始化總是一個(gè)賦值語(yǔ)句,它用來給循環(huán)控制變量賦初值;條件表達(dá)式是一個(gè)關(guān)系表達(dá)式,它決定什么時(shí)候退出循環(huán);增量定義循環(huán)控制變量每循環(huán)一次后按什么方式變化。這三個(gè)部分之間用;分開。

  例如:

  for(i=1;i<=10;i++)

  語(yǔ)句;

  上例中先給i賦初值1,判斷i是否小于等于10,若是則執(zhí)行語(yǔ)句,之后值增加1。再重新判斷,直到條件為假,即i>10時(shí),結(jié)束循環(huán)。

  注意:

  (1).for循環(huán)中語(yǔ)句可以為語(yǔ)句體,但要用{和}將參加循環(huán)的語(yǔ)句括起來。

  (2).for循環(huán)中的初始化、條件表達(dá)式和增量都是選擇項(xiàng),即可以缺省,但;不能缺省。省略了初始化,表示不對(duì)循環(huán)控制變量賦初值。省略了條件表達(dá)式,則不做其它處理時(shí)便成為死循環(huán)。省略了增量,則不對(duì)循環(huán)控制變量進(jìn)行操作,這時(shí)可在語(yǔ)句體中加入修改循環(huán)控制變量的語(yǔ)句。

  (3).for循環(huán)可以有多層嵌套。

  例如:

  for(;;) 語(yǔ)句;

  for(i=1;;i+=2) 語(yǔ)句;

  for(j=5;;) 語(yǔ)句;

  這些for循環(huán)語(yǔ)句都是正確的。

  main()

  {

  int i,j;

  printf(i j\n);

  for(i=0;i<2;i++)

  for(j=0;j<3;j++)

  printf(%d %d\n,i,j);

  }

  輸出結(jié)果為:

  i j

  0 0

  0 1

  0 2

  1 0

  1 1

  1 2

  用for循環(huán)求1+2+……+100的和:

  main()

  {

  int sn=0,i;

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

  sn+=i; /*1+2+……+100*/

  printf(%d\n,sn);

  }

  從程序可以看出,使用循環(huán)語(yǔ)句可以大大簡(jiǎn)化代碼。

  (二)、while循環(huán) 它的一般形式為:

  while(條件)

  語(yǔ)句;

  while循環(huán)表示當(dāng)條件為真時(shí),便執(zhí)行語(yǔ)句。直到條件為假才結(jié)束循環(huán)。并繼續(xù)執(zhí)行循環(huán)程序外的后續(xù)語(yǔ)句。

  例如:

  #include stdio.h

  main()

  {

  char c;

  c='\0'; /*初始化c*/

  while(c!='\n') /*回車結(jié)束循環(huán)*/

  c=getche(); /*帶回顯的從鍵盤接收字符*/

  }

  上例中,while循環(huán)是以檢查c是否為回車符開始,因其事先被初始化為空,所以條件為真,進(jìn)入循環(huán)等待鍵盤輸入字符;一旦輸入回車,則c='\n',條件為假,循環(huán)便告結(jié)束。與for循環(huán)一樣,while循環(huán)總是在循環(huán)的頭部檢驗(yàn)條件,這就意味著循環(huán)可能什么也不執(zhí)行就退出。

  注意:

  (1).在while循環(huán)體內(nèi)也允許空語(yǔ)句。

  例如:

  while((c=getche())!='\n');

  這個(gè)循環(huán)直到鍵入回車為止。

  (2).可以有多層循環(huán)嵌套。

  (3).語(yǔ)句可以是語(yǔ)句體, 此時(shí)必須用{和}括起來。

  用while循環(huán)求1+2+……+100的和:

  main()

  {

  int sn=0,i=0;

  while(++i<=100)

  sn+=i; /*求1+2+……+100*/

  printf(%d\n,sn);

  }

  (三)、do--while循環(huán) 它的一般格式為:

  do

  {

  語(yǔ)句塊;

  }

  while(條件);

  這個(gè)循環(huán)與while循環(huán)的不同在于:它先執(zhí)行循環(huán)中的語(yǔ)句,然后再判斷條件是否為真,如果為真則繼續(xù)循環(huán);如果為假,則終止循環(huán)。因此,do-while循環(huán)至少要執(zhí)行一次循環(huán)語(yǔ)句。

  同樣當(dāng)有許多語(yǔ)句參加循環(huán)時(shí),要用{和}把它們括起來。

  用do--while循環(huán)求1+2+……+100的和:

  main()

  {

  int sn=0,i=1;

  do

  sn+=i; /*求1+2+……+100*/

  while(++i<=100);

  printf(%d\n,sn);

  }

  從上面三個(gè)程序看出,使用for,while和do--while求解同樣的問題,基本思路都差不多,只是在第一次計(jì)算時(shí),注意初值。

首頁(yè) 1 2 3 尾頁(yè)
分享到:
本文糾錯(cuò)】【告訴好友】【打印此文】【返回頂部
將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動(dòng)訪問考試網(wǎng) | 復(fù)制本頁(yè)地址,傳給QQ/MSN上的好友 | 申請(qǐng)鏈接 | 意見留言 TOP
關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
Copyright © 2006-2017 中華考試網(wǎng)(Examw.com) All Rights Reserved  營(yíng)業(yè)執(zhí)照
禄丰县| 榆社县| 库尔勒市| 镇江市| 赣州市| 璧山县| 恩施市| 揭东县| 那坡县| 信丰县| 靖州| 融水| 甘南县| 漾濞| 七台河市| 葫芦岛市| 田林县| 壶关县| 樟树市| 电白县| 阿坝县| 平山县| 横峰县| 淮滨县| 且末县| 保定市| 肇州县| 武城县| 临漳县| 珲春市| 克拉玛依市| 嘉兴市| 昌平区| 贡山| 江北区| 福鼎市| 镇原县| 彝良县| 莲花县| 思茅市| 新疆|