68精品久久久久久欧美,最近中文字幕完整在线看一,久久亚洲男人天堂,最近中文字幕完整视频高清1

您好,歡迎進(jìn)入深圳市穎特新科技有限公司官方網(wǎng)站!

您現(xiàn)在的位置:首頁 新聞資訊 >> 新聞頭條 >> C語言while語句
新聞資訊
NEWS INFORMATION

C語言while語句

發(fā)布時(shí)間:2019-05-22

在C語言中,共有三大常用的程序結(jié)構(gòu):

  • 順序結(jié)構(gòu):代碼從前往后執(zhí)行,沒有任何“拐彎抹角”;
  • 選擇結(jié)構(gòu):也叫分支結(jié)構(gòu),重點(diǎn)要掌握 if else、switch 以及條件運(yùn)算符;
  • 循環(huán)結(jié)構(gòu):重復(fù)執(zhí)行同一段代碼。


前面講解了順序結(jié)構(gòu)和選擇結(jié)構(gòu),本節(jié)開始講解循環(huán)結(jié)構(gòu)。所謂循環(huán)(Loop),就是重復(fù)地執(zhí)行同一段代碼,例如要計(jì)算 1+2+3+……+99+100 的值,就要重復(fù)進(jìn)行99次加法運(yùn)算。

while循環(huán)

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

while(表達(dá)式){
    語句塊
}

意思是,先計(jì)算“表達(dá)式”的值,當(dāng)值為真(非0)時(shí), 執(zhí)行“語句塊”;執(zhí)行完“語句塊”,再次計(jì)算表達(dá)式的值,如果為真,繼續(xù)執(zhí)行“語句塊”……這個(gè)過程會一直重復(fù),直到表達(dá)式的值為假(0),就退出循環(huán),執(zhí)行 while 后面的代碼。

我們通常將“表達(dá)式”稱為循環(huán)條件,把“語句塊”稱為循環(huán)體,整個(gè)循環(huán)的過程就是不停判斷循環(huán)條件、并執(zhí)行循環(huán)體代碼的過程。

用 while 循環(huán)計(jì)算1加到100的值:

  1. #include <stdio.h>
  2. int main(){
  3. int i=1, sum=0;
  4. while(i<=100){
  5. sum+=i;
  6. i++;
  7. }
  8. printf("%d\n",sum);
  9. return 0;
  10. }

運(yùn)行結(jié)果:
5050

代碼分析:
1) 程序運(yùn)行到 while 時(shí),因?yàn)?i=1,i<=100 成立,所以會執(zhí)行循環(huán)體;執(zhí)行結(jié)束后 i 的值變?yōu)?2,sum 的值變?yōu)?1。

2) 接下來會繼續(xù)判斷 i<=100是否成立,因?yàn)榇藭r(shí) i=2,i<=100 成立,所以繼續(xù)執(zhí)行循環(huán)體;執(zhí)行結(jié)束后 i 的值變?yōu)?3,sum 的值變?yōu)?。

3) 重復(fù)執(zhí)行步驟 2)。

4) 當(dāng)循環(huán)進(jìn)行到第100次,i 的值變?yōu)?101,sum 的值變?yōu)?050;因?yàn)榇藭r(shí) i<=100 不再成立,所以就退出循環(huán),不再執(zhí)行循環(huán)體,轉(zhuǎn)而執(zhí)行while循環(huán)后面的代碼。

while 循環(huán)的整體思路是這樣的:設(shè)置一個(gè)帶有變量的循環(huán)條件,也即一個(gè)帶有變量的表達(dá)式;在循環(huán)體中額外添加一條語句,讓它能夠改變循環(huán)條件中變量的值。這樣,隨著循環(huán)的不斷執(zhí)行,循環(huán)條件中變量的值也會不斷變化,終有一個(gè)時(shí)刻,循環(huán)條件不再成立,整個(gè)循環(huán)就結(jié)束了。

如果循環(huán)條件中不包含變量,會發(fā)生什么情況呢?

1) 循環(huán)條件成立時(shí)的話,while 循環(huán)會一直執(zhí)行下去,永不結(jié)束,成為“死循環(huán)”。例如:

  1. #include <stdio.h>
  2. int main(){
  3. while(1){
  4. printf("1");
  5. }
  6. return 0;
  7. }

運(yùn)行程序,會不停地輸出“1”,直到用戶強(qiáng)制關(guān)閉。

2) 循環(huán)條件不成立的話,while 循環(huán)就一次也不會執(zhí)行。例如:

  1. #include <stdio.h>
  2. int main(){
  3. while(0){
  4. printf("1");
  5. }
  6. return 0;
  7. }

運(yùn)行程序,什么也不會輸出。

再看一個(gè)例子,統(tǒng)計(jì)從鍵盤輸入的一行字符的個(gè)數(shù):

  1. #include <stdio.h>
  2. int main(){
  3. int n=0;
  4. printf("Input a string:");
  5. while(getchar()!='\n') n++;
  6. printf("Number of characters: %d\n", n);
  7. return 0;
  8. }

運(yùn)行結(jié)果:
Input a string:c.biancheng.net↙
Number of characters: 15

本例程序中的循環(huán)條件為getchar()!='\n',其意義是,只要從鍵盤輸入的字符不是回車就繼續(xù)循環(huán)。循環(huán)體n++;完成對輸入字符個(gè)數(shù)計(jì)數(shù)。

do-while循環(huán)

除了while循環(huán),在C語言中還有一種 do-while 循環(huán)。

do-while循環(huán)的一般形式為:

do{
    語句塊
}while(表達(dá)式);

do-while循環(huán)與while循環(huán)的不同在于:它會先執(zhí)行“語句塊”,然后再判斷表達(dá)式是否為真,如果為真則繼續(xù)循環(huán);如果為假,則終止循環(huán)。因此,do-while 循環(huán)至少要執(zhí)行一次“語句塊”。

用do-while計(jì)算1加到100的值:

  1. #include <stdio.h>
  2. int main(){
  3. int i=1, sum=0;
  4. do{
  5. sum+=i;
  6. i++;
  7. }while(i<=100);
  8. printf("%d\n", sum);
  9. return 0;
  10. }

運(yùn)行結(jié)果:
5050

注意while(i<=100);最后的分號;,這個(gè)必須要有。

while循環(huán)和do-while各有特點(diǎn),大家可以適當(dāng)選擇,實(shí)際編程中使用while循環(huán)較多。

聯(lián)系方式0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬眾潤豐創(chuàng)業(yè)園A棟2樓A08

南漳县| 石城县| 淳安县| 丹巴县| 奇台县| 枞阳县| 南阳市| 巴东县| 盐池县| 宝鸡市| 临桂县| 芦溪县| 乌兰浩特市| 尚志市| 怀仁县| 宣汉县| 那坡县| 浦城县| 多伦县| 共和县| 常州市| 武威市| 新邵县| 安多县| 黑山县| 诏安县| 墨玉县| 泰和县| 得荣县| 奎屯市| 崇信县| 江川县| 陇南市| 玉树县| 米林县| 龙里县| 新营市| 府谷县| 集安市| 嘉义县| 万源市|