c語(yǔ)言中while的用法
c語(yǔ)言中while的用法的用法你知道嗎?下面小編就跟你們?cè)敿?xì)介紹下c語(yǔ)言中while的用法的用法,希望對(duì)你們有用。
c語(yǔ)言中while的用法的用法如下:
while語(yǔ)句的一般形式為:
while(表達(dá)式) 語(yǔ)句
其中表達(dá)式是循環(huán)條件,語(yǔ)句為循環(huán)體。
while語(yǔ)句的語(yǔ)義是:計(jì)算表達(dá)式的值,當(dāng)值為真(非0)時(shí), 執(zhí)行循環(huán)體語(yǔ)句。其執(zhí)行過(guò)程可用下圖表示。
【例6-2】用while語(yǔ)句計(jì)算從1加到100的值。用傳統(tǒng)流程圖和N-S結(jié)構(gòu)流程圖表示算法,見(jiàn)圖:
01.#include <stdio.h>
02.int main(void){
03. int i,sum=0;
04. i=1;
05. while(i<=100){
06. sum=sum+i;
07. i++;
08. }
09. printf("%d\n",sum);
10. return 0;
11.}
【例6-3】統(tǒng)計(jì)從鍵盤(pán)輸入一行字符的個(gè)數(shù)。
01.#include <stdio.h>
02.int main(void){
03. int n=0;
04. printf("input a string:\n");
05. while(getchar()!='\n') n++;
06. printf("%d",n);
07. return 0;
08.}
本例程序中的循環(huán)條件為getchar()!='\n',其意義是,,只要從鍵盤(pán)輸入的字符不是回車就繼續(xù)循環(huán)。循環(huán)體n++完成對(duì)輸入字符個(gè)數(shù)計(jì)數(shù)。從而程序?qū)崿F(xiàn)了對(duì)輸入一行字符的字符個(gè)數(shù)計(jì)數(shù)。
使用while語(yǔ)句應(yīng)注意以下兩點(diǎn)。
1) while語(yǔ)句中的表達(dá)式一般是關(guān)系表達(dá)或邏輯表達(dá)式,只要表達(dá)式的值為真(非0)即可繼續(xù)循環(huán)。
01.#include <stdio.h>
02.int main(void){
03. int a=0,n;
04. printf("\n input n: ");
05. scanf("%d",&n);
06. while (n--) printf("%d ",a++*2);
07. return 0;
08.}
本例程序?qū)?zhí)行n次循環(huán),每執(zhí)行一次,n值減1。循環(huán)體輸出表達(dá)式a++*2的值。該表達(dá)式等效于(a*2; a++)。
2) 循環(huán)體如包括有一個(gè)以上的語(yǔ)句,則必須用{}括起來(lái),組成復(fù)合語(yǔ)句。