版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第4章循環(huán)程序設(shè)計(jì)
第4章循環(huán)程序設(shè)計(jì)
14.1do循環(huán)結(jié)構(gòu)4.2while循環(huán)結(jié)構(gòu)4.3for循環(huán)結(jié)構(gòu)
4.4循環(huán)結(jié)構(gòu)的嵌套與退出4.1do循環(huán)結(jié)構(gòu)2在這一章中將介紹C語言程序的while、do及for等循環(huán)語句的程序結(jié)構(gòu)。循環(huán)語句就是讓一句或一段程序不斷執(zhí)行的語句,它是程序結(jié)構(gòu)中的一種重要語句格式。在這一章中將介紹C語言程序的while、d34.1do循環(huán)結(jié)構(gòu)
4.1.2do循環(huán)語句
在計(jì)算機(jī)中很多的程序計(jì)算需要重復(fù)循環(huán)執(zhí)行,do循環(huán)語句就是滿足這種要求的語句,其結(jié)構(gòu)如下:do{語句;}while(條件);該段程序首先執(zhí)行指定的語句,它可以是一條語句或多條語句,之后判斷條件,條件是一個(gè)邏輯表達(dá)式,它的值如為真,則就重復(fù)循環(huán)執(zhí)行指定的語句,一直到條件為假為止,該循環(huán)才結(jié)束,程序的流程如圖4-2所示。
4.1do循環(huán)結(jié)構(gòu)
4.1.2do循環(huán)語句4圖4-2do循環(huán)的流程
圖4-2do循環(huán)的流程51.有限次數(shù)的循環(huán)一般在條件中包含一個(gè)循環(huán)變量,該循環(huán)變量在循環(huán)語句中是每次都改變的,保證循環(huán)條件在不斷改變,確保條件從開始的真變?yōu)樽詈蟮募?,讓循環(huán)結(jié)束,循環(huán)語句執(zhí)行的次數(shù)稱為循環(huán)次數(shù),循環(huán)次數(shù)應(yīng)該是有限的。1.有限次數(shù)的循環(huán)62.死循環(huán)如循環(huán)條件一直為真,永遠(yuǎn)不會變?yōu)榧?,則該循環(huán)會循環(huán)無限次,出現(xiàn)死循環(huán)。程序如出現(xiàn)死循環(huán),計(jì)算機(jī)將永遠(yuǎn)執(zhí)行循環(huán)語句,別的語句將得不到執(zhí)行,程序得不到正常結(jié)束,這是應(yīng)用中要避免的。2.死循環(huán)74.2while循環(huán)結(jié)構(gòu)
4.2.1while循環(huán)語句
前面介紹過do循環(huán),這一節(jié)介紹一個(gè)相似的循環(huán),既while循環(huán)。while結(jié)構(gòu)如下:while(條件)語句;其中條件是一個(gè)邏輯表達(dá)式,它的值為真或假,語句可以是一個(gè)單一的語句,也可以是一個(gè)復(fù)合語句。該循環(huán)的執(zhí)行規(guī)則是先判斷條件是否成立,之后才決定是否執(zhí)行循環(huán)語句,如條件不成立則結(jié)束循環(huán),如條件成立則再次執(zhí)行循環(huán)語句,只要條件成立則一直執(zhí)行循環(huán)語句,程序流程如圖4-7所示。4.2while循環(huán)結(jié)構(gòu)
4.2.1while循環(huán)語8圖4-7while循環(huán)的流程
圖4-7while循環(huán)的流程9前面的do循環(huán)是先執(zhí)行循環(huán)語句后才判斷條件是否成立,因此即便開始時(shí)條件不成立也會先執(zhí)行一次。這里while循環(huán)不同,while循環(huán)是先判斷條件后才決定是否執(zhí)行循環(huán)語句,當(dāng)條件不成立時(shí)循環(huán)不執(zhí)行。do循環(huán)至少執(zhí)行一次循環(huán),但while循環(huán)可能一次也不執(zhí)行,除此之外,在實(shí)際應(yīng)用中兩者有很多相似之處。
前面的do循環(huán)是先執(zhí)行循環(huán)語句后才判斷條件是104.3for循環(huán)結(jié)構(gòu)
4.3.1for循環(huán)語句
for循環(huán)語句的一般格式為:for(變量初始化表達(dá)式;條件;變量變化表達(dá)式)語句;4.3for循環(huán)結(jié)構(gòu)
4.3.1for循環(huán)語句11for循環(huán)的執(zhí)行規(guī)則是:(1)
當(dāng)進(jìn)入for循環(huán)時(shí),首先執(zhí)行變量初始化表達(dá)式,接著就判斷條件,如條件不成立,則循環(huán)一次也不會執(zhí)行。(2)
如條件成立,則執(zhí)行循環(huán)的語句,循環(huán)語句可以是單個(gè)語句,也可以是復(fù)合語句。(3)
變量變化表達(dá)式在循環(huán)語句執(zhí)行完成后執(zhí)行,之后回到(2)。for循環(huán)的執(zhí)行流程如圖4-8所示。for循環(huán)的執(zhí)行規(guī)則是:12圖4-8for循環(huán)的執(zhí)行流程
圖4-8for循環(huán)的執(zhí)行流程13變量初始化表達(dá)式一般用來設(shè)置變量的初始值,條件表達(dá)式是控制循環(huán)次數(shù)的,只有當(dāng)條件成立時(shí),循環(huán)才進(jìn)行。變量變化表達(dá)式控制每次循環(huán)后變量的變化,這個(gè)控制循環(huán)的變量一般就是循環(huán)變量。
變量初始化表達(dá)式一般用來設(shè)置變量的初始值,條144.3.3幾種循環(huán)的比較
從理論上講do、while及for循環(huán)都可以互相轉(zhuǎn)換與代替,程序可以根據(jù)實(shí)際問題的需要來使用什么樣的循環(huán)。一般來說,do與while循環(huán)常用于預(yù)先不確定循環(huán)次數(shù)的循環(huán)中,而for循環(huán)更適合用于預(yù)先確定循環(huán)次數(shù)的循環(huán)中。4.3.3幾種循環(huán)的比較
154.4循環(huán)結(jié)構(gòu)的嵌套與退出4.4.1循環(huán)結(jié)構(gòu)的嵌套
一個(gè)循環(huán)的循環(huán)語句可以是一個(gè)復(fù)合語句,在復(fù)合語句中又包含一個(gè)循環(huán),這樣就出現(xiàn)了循環(huán)的嵌套。
4.4循環(huán)結(jié)構(gòu)的嵌套與退出164.4.2多循環(huán)的規(guī)則
多個(gè)循環(huán)存在時(shí),只能并列或嵌套,不能出現(xiàn)交叉。
1.
循環(huán)并列既多個(gè)循環(huán)按前后順序的關(guān)系出現(xiàn)在同一層上,例如以下的i循環(huán)與j循環(huán)的關(guān)系:for(i=1;i<=9;i++){……}……for(j=1;j<=9;j++){……}……可以用如圖4-13所示來形象的表示這種關(guān)系。4.4.2多循環(huán)的規(guī)則
多個(gè)循環(huán)存在時(shí),只能17圖4-13循環(huán)并列
圖4-13循環(huán)并列182.
循環(huán)嵌套既一個(gè)外層的循環(huán)套一個(gè)內(nèi)層的循環(huán),例如以下的i循環(huán)與j循環(huán)的關(guān)系:for(i=1;i<=9;i++){……for(j=1;j<=9;j++){……}……}可以用如圖4-14所示來形象的表示這種關(guān)系。
2.
循環(huán)嵌套19圖4-14循環(huán)嵌套
圖4-14循環(huán)嵌套203.
循環(huán)交叉既一個(gè)外層的循環(huán)與一個(gè)內(nèi)層的交叉,例如以下的i循環(huán)與j循環(huán)的關(guān)系:i=1;do{j=1;do{printf(“%d”,i*j);j++;}while(i<=9);i++;}while(j<=9);可以用如圖4-15所示來形象的表示這種關(guān)系。
3.
循環(huán)交叉21圖4-15循環(huán)交叉
圖4-15循環(huán)交叉22一般來說,一個(gè)程序中往往會出現(xiàn)多個(gè)循環(huán)的并列與嵌套的結(jié)構(gòu),而且嵌套可以有多層。如圖4-16所示表示有6個(gè)循環(huán),其中循環(huán)1與循環(huán)5是并列關(guān)系,循環(huán)2與循環(huán)4也是并列關(guān)系,循環(huán)1套了循環(huán)2與循環(huán)4,循環(huán)2套了循環(huán)3,循環(huán)5套了循環(huán)6。一般來說,一個(gè)程序中往往會出現(xiàn)多個(gè)循環(huán)的并23圖4-16多循環(huán)的并列與嵌套
圖4-16多循環(huán)的并列與嵌套244.4.3循環(huán)的退出
1.
break語句break語句用在循環(huán)中時(shí)會強(qiáng)制退出循環(huán),注意在有多層循環(huán)時(shí)break只退出它所對應(yīng)的那一層的循環(huán),并不是最外層的循環(huán)。
2.
continue語句continue語句用在循環(huán)中時(shí)不會強(qiáng)制退出循環(huán),但它會跳過循環(huán)體中剩余的部分而轉(zhuǎn)去循環(huán)的結(jié)尾部分,強(qiáng)制開始下一輪循環(huán)。
4.4.3循環(huán)的退出
1.
break語句25第4章循環(huán)程序設(shè)計(jì)
第4章循環(huán)程序設(shè)計(jì)
264.1do循環(huán)結(jié)構(gòu)4.2while循環(huán)結(jié)構(gòu)4.3for循環(huán)結(jié)構(gòu)
4.4循環(huán)結(jié)構(gòu)的嵌套與退出4.1do循環(huán)結(jié)構(gòu)27在這一章中將介紹C語言程序的while、do及for等循環(huán)語句的程序結(jié)構(gòu)。循環(huán)語句就是讓一句或一段程序不斷執(zhí)行的語句,它是程序結(jié)構(gòu)中的一種重要語句格式。在這一章中將介紹C語言程序的while、d284.1do循環(huán)結(jié)構(gòu)
4.1.2do循環(huán)語句
在計(jì)算機(jī)中很多的程序計(jì)算需要重復(fù)循環(huán)執(zhí)行,do循環(huán)語句就是滿足這種要求的語句,其結(jié)構(gòu)如下:do{語句;}while(條件);該段程序首先執(zhí)行指定的語句,它可以是一條語句或多條語句,之后判斷條件,條件是一個(gè)邏輯表達(dá)式,它的值如為真,則就重復(fù)循環(huán)執(zhí)行指定的語句,一直到條件為假為止,該循環(huán)才結(jié)束,程序的流程如圖4-2所示。
4.1do循環(huán)結(jié)構(gòu)
4.1.2do循環(huán)語句29圖4-2do循環(huán)的流程
圖4-2do循環(huán)的流程301.有限次數(shù)的循環(huán)一般在條件中包含一個(gè)循環(huán)變量,該循環(huán)變量在循環(huán)語句中是每次都改變的,保證循環(huán)條件在不斷改變,確保條件從開始的真變?yōu)樽詈蟮募?,讓循環(huán)結(jié)束,循環(huán)語句執(zhí)行的次數(shù)稱為循環(huán)次數(shù),循環(huán)次數(shù)應(yīng)該是有限的。1.有限次數(shù)的循環(huán)312.死循環(huán)如循環(huán)條件一直為真,永遠(yuǎn)不會變?yōu)榧?,則該循環(huán)會循環(huán)無限次,出現(xiàn)死循環(huán)。程序如出現(xiàn)死循環(huán),計(jì)算機(jī)將永遠(yuǎn)執(zhí)行循環(huán)語句,別的語句將得不到執(zhí)行,程序得不到正常結(jié)束,這是應(yīng)用中要避免的。2.死循環(huán)324.2while循環(huán)結(jié)構(gòu)
4.2.1while循環(huán)語句
前面介紹過do循環(huán),這一節(jié)介紹一個(gè)相似的循環(huán),既while循環(huán)。while結(jié)構(gòu)如下:while(條件)語句;其中條件是一個(gè)邏輯表達(dá)式,它的值為真或假,語句可以是一個(gè)單一的語句,也可以是一個(gè)復(fù)合語句。該循環(huán)的執(zhí)行規(guī)則是先判斷條件是否成立,之后才決定是否執(zhí)行循環(huán)語句,如條件不成立則結(jié)束循環(huán),如條件成立則再次執(zhí)行循環(huán)語句,只要條件成立則一直執(zhí)行循環(huán)語句,程序流程如圖4-7所示。4.2while循環(huán)結(jié)構(gòu)
4.2.1while循環(huán)語33圖4-7while循環(huán)的流程
圖4-7while循環(huán)的流程34前面的do循環(huán)是先執(zhí)行循環(huán)語句后才判斷條件是否成立,因此即便開始時(shí)條件不成立也會先執(zhí)行一次。這里while循環(huán)不同,while循環(huán)是先判斷條件后才決定是否執(zhí)行循環(huán)語句,當(dāng)條件不成立時(shí)循環(huán)不執(zhí)行。do循環(huán)至少執(zhí)行一次循環(huán),但while循環(huán)可能一次也不執(zhí)行,除此之外,在實(shí)際應(yīng)用中兩者有很多相似之處。
前面的do循環(huán)是先執(zhí)行循環(huán)語句后才判斷條件是354.3for循環(huán)結(jié)構(gòu)
4.3.1for循環(huán)語句
for循環(huán)語句的一般格式為:for(變量初始化表達(dá)式;條件;變量變化表達(dá)式)語句;4.3for循環(huán)結(jié)構(gòu)
4.3.1for循環(huán)語句36for循環(huán)的執(zhí)行規(guī)則是:(1)
當(dāng)進(jìn)入for循環(huán)時(shí),首先執(zhí)行變量初始化表達(dá)式,接著就判斷條件,如條件不成立,則循環(huán)一次也不會執(zhí)行。(2)
如條件成立,則執(zhí)行循環(huán)的語句,循環(huán)語句可以是單個(gè)語句,也可以是復(fù)合語句。(3)
變量變化表達(dá)式在循環(huán)語句執(zhí)行完成后執(zhí)行,之后回到(2)。for循環(huán)的執(zhí)行流程如圖4-8所示。for循環(huán)的執(zhí)行規(guī)則是:37圖4-8for循環(huán)的執(zhí)行流程
圖4-8for循環(huán)的執(zhí)行流程38變量初始化表達(dá)式一般用來設(shè)置變量的初始值,條件表達(dá)式是控制循環(huán)次數(shù)的,只有當(dāng)條件成立時(shí),循環(huán)才進(jìn)行。變量變化表達(dá)式控制每次循環(huán)后變量的變化,這個(gè)控制循環(huán)的變量一般就是循環(huán)變量。
變量初始化表達(dá)式一般用來設(shè)置變量的初始值,條394.3.3幾種循環(huán)的比較
從理論上講do、while及for循環(huán)都可以互相轉(zhuǎn)換與代替,程序可以根據(jù)實(shí)際問題的需要來使用什么樣的循環(huán)。一般來說,do與while循環(huán)常用于預(yù)先不確定循環(huán)次數(shù)的循環(huán)中,而for循環(huán)更適合用于預(yù)先確定循環(huán)次數(shù)的循環(huán)中。4.3.3幾種循環(huán)的比較
404.4循環(huán)結(jié)構(gòu)的嵌套與退出4.4.1循環(huán)結(jié)構(gòu)的嵌套
一個(gè)循環(huán)的循環(huán)語句可以是一個(gè)復(fù)合語句,在復(fù)合語句中又包含一個(gè)循環(huán),這樣就出現(xiàn)了循環(huán)的嵌套。
4.4循環(huán)結(jié)構(gòu)的嵌套與退出414.4.2多循環(huán)的規(guī)則
多個(gè)循環(huán)存在時(shí),只能并列或嵌套,不能出現(xiàn)交叉。
1.
循環(huán)并列既多個(gè)循環(huán)按前后順序的關(guān)系出現(xiàn)在同一層上,例如以下的i循環(huán)與j循環(huán)的關(guān)系:for(i=1;i<=9;i++){……}……for(j=1;j<=9;j++){……}……可以用如圖4-13所示來形象的表示這種關(guān)系。4.4.2多循環(huán)的規(guī)則
多個(gè)循環(huán)存在時(shí),只能42圖4-13循環(huán)并列
圖4-13循環(huán)并列432.
循環(huán)嵌套既一個(gè)外層的循環(huán)套一個(gè)內(nèi)層的循環(huán),例如以下的i循環(huán)與j循環(huán)的關(guān)系:for(i=1;i<=9;i++){……for(j=1;j<=9;j++){……}……}可以用如圖4-14所示來形象的表示這種關(guān)系。
2.
循環(huán)嵌套44圖4-14循環(huán)嵌套
圖4-14循環(huán)嵌套453.
循環(huán)交叉既一個(gè)外層的循環(huán)與一個(gè)內(nèi)層的交叉,例如以下的i循環(huán)與j循環(huán)的關(guān)系:i=1;do{j=1;do{printf(“%d”,i*j);j++;}while(i<=9);i++;}while(j<=9);可以用如圖4-15所示來形象的表示這種關(guān)系。
3.
循環(huán)交叉46圖4-15循環(huán)交叉
圖4-15循環(huán)交叉47一般來說,一個(gè)程序中往往會出現(xiàn)多個(gè)循環(huán)的并列與嵌套的結(jié)構(gòu),而且嵌套可以有多層。如圖4-16所示表示有6個(gè)循環(huán),其中循環(huán)1與循環(huán)5是并列關(guān)系,循環(huán)2與循環(huán)4也是并列關(guān)系,循環(huán)1套了循環(huán)2與循環(huán)4,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024擔(dān)保合同范本樣本
- 2024天津市小型建設(shè)工程施工合同(空白)
- 廣告代理服務(wù)合同
- 寫字間租賃協(xié)議
- 建筑施工承包合同范本
- 個(gè)人期貨市場貸款合同
- 人才互助發(fā)展協(xié)議書
- 新版股權(quán)協(xié)議書樣本
- 攪拌機(jī)租賃合同樣式
- 技術(shù)服務(wù)合同樣本地址
- 2023年新華社招聘122人筆試參考題庫(共500題)答案詳解版
- 2023游戲行業(yè)人才報(bào)告
- 流行病學(xué)的誤差和偏倚
- 2023年中級經(jīng)濟(jì)師考試真題及答案完整版
- 二年級上冊道德與法治10《我們不亂扔》說課稿
- 2023-2024學(xué)年高一上學(xué)期選科指導(dǎo)主題班會 課件
- Unit4ExploringpoetryExtendedReading公開課課件高中英語牛津譯林版(2020)選擇性
- 天線技術(shù)在智能電網(wǎng)通信系統(tǒng)中的關(guān)鍵技術(shù)研究-第2篇
- 急診科護(hù)士培訓(xùn)計(jì)劃(6篇)
- 中國公路學(xué)會高德地圖-2023年高速公路服務(wù)區(qū)出行熱度分析報(bào)告:1月-6月
- 安裝發(fā)光字驗(yàn)收單
評論
0/150
提交評論