Do-While…-Loop前測(cè)試循環(huán)語(yǔ)句_第1頁(yè)
Do-While…-Loop前測(cè)試循環(huán)語(yǔ)句_第2頁(yè)
Do-While…-Loop前測(cè)試循環(huán)語(yǔ)句_第3頁(yè)
Do-While…-Loop前測(cè)試循環(huán)語(yǔ)句_第4頁(yè)
Do-While…-Loop前測(cè)試循環(huán)語(yǔ)句_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Do…Loop循環(huán)語(yǔ)句For…Next循環(huán)語(yǔ)句針對(duì)于知道固定循環(huán)次數(shù)的循環(huán)程序。在許多問題中,我們事先并不能確定循環(huán)需要執(zhí)行的次數(shù),這時(shí),我們可以選擇Do…Loop循環(huán)語(yǔ)句。Do…Loop循環(huán)語(yǔ)句共有兩種情況:〔1〕DoWhile…Loop循環(huán)語(yǔ)句〔2〕Do…UntilLoop循環(huán)語(yǔ)句。在Do…Loop循環(huán)語(yǔ)句中,可以把循環(huán)控制局部放在循環(huán)的前面〔即前測(cè)試循環(huán)〕,也可以放在循環(huán)的后面〔即后測(cè)試循環(huán)〕DoWhile…Loop循環(huán)語(yǔ)句DoWhile<循環(huán)條件表達(dá)式>循環(huán)體[ExitDo]Loop功能:首先測(cè)試循環(huán)條件表達(dá)式是否成立,假設(shè)循環(huán)條件滿足,那么進(jìn)入循環(huán)。DoWhile…Loop循環(huán)語(yǔ)句又稱為“當(dāng)型循環(huán)”,即當(dāng)循環(huán)條件成立,才開始進(jìn)入循環(huán)。說明:假設(shè)循環(huán)沒有結(jié)束,但程序需要退出循環(huán)時(shí),可以使用ExitDo語(yǔ)句退出循環(huán)。前測(cè)試循環(huán)的語(yǔ)法:DoWhile…Loop循環(huán)語(yǔ)句的流程圖如下循環(huán)體循環(huán)條件表達(dá)式是否例題:編程輸出1~5的算術(shù)平方根。要求用DoWhile…Loop循環(huán)語(yǔ)句。程序代碼如下:循環(huán)的詳細(xì)執(zhí)行過程如下:〔1〕首先,x的值為1;〔2〕判斷當(dāng)前循環(huán)條件表達(dá)式是否成立,如果成立,那么執(zhí)行循環(huán)體;〔3〕此時(shí)成立,那么執(zhí)行循環(huán)體;〔4〕在循環(huán)體內(nèi)部,對(duì)x的值進(jìn)行了加1運(yùn)算,此時(shí)的x的值為2;〔5〕程序跳至〔2〕,重新判斷循環(huán)條件是否成立?!?〕當(dāng)循環(huán)語(yǔ)句執(zhí)行了5次后,此時(shí)循環(huán)變量x的值為6,當(dāng)跳至步驟〔2〕時(shí),不滿足循環(huán)條件了,此時(shí)循環(huán)結(jié)束。Rem編程輸出1~5的算術(shù)平方根。PrivateSubCommand1_Click()DimxAsLongx=1'循環(huán)變量賦初值DoWhilex<=5'當(dāng)型循環(huán)PrintSqr(x)'輸出x=x+1'循環(huán)變量根據(jù)條件增加LoopPrint"循環(huán)結(jié)束后循環(huán)變量x的值為";xEndSub說明:〔1〕x作為循環(huán)變量,首先要賦初值;〔2〕循環(huán)變量在循環(huán)體內(nèi)部需要根據(jù)條件進(jìn)行更改。詳見form1。提問1:循環(huán)語(yǔ)句共循環(huán)了幾次?答:5次。提問2:當(dāng)循環(huán)語(yǔ)句結(jié)束后,此時(shí)的循環(huán)變量是多少?答:此時(shí)的循環(huán)變量x值為6。提問3:DoWhile…Loop循環(huán)語(yǔ)句與For…Next循環(huán)語(yǔ)句的區(qū)別有哪些?答:〔1〕For…Next的循環(huán)變量一般用整型變量;Do…Loop循環(huán)不做要求?!?〕For…Next的循環(huán)變量在語(yǔ)句“For循環(huán)變量=初值To終值[Step步長(zhǎng)]”內(nèi);Do…Loop循環(huán)需要在循環(huán)開始之前賦初值?!?〕For…Next的循環(huán)變量會(huì)自動(dòng)增加步長(zhǎng);Do…Loop循環(huán)需要在循環(huán)體內(nèi)用賦值語(yǔ)句重新更改。例題:編程求[1,100]內(nèi)的奇數(shù)和。分析:此題即求S=1+3+5+…+99的和。程序代碼如下:Rem編程求[1,100]內(nèi)的奇數(shù)和。PrivateSubCommand1_Click()Dimx,sAsLongx=1'x為循環(huán)變量,循環(huán)開始前賦初值s=0's為累加求和的變量,沒有累加前,s的初始值應(yīng)該為0DoWhilex<=100s=s+x'將變量x的值進(jìn)行累加x=x+2'循環(huán)變量根據(jù)條件更改LoopPrint"[1,100]內(nèi)的奇數(shù)和為";sPrint"循環(huán)結(jié)束后循環(huán)變量x的值為";xEndSub詳見form2。前面兩個(gè)例題都是對(duì)For…Next循環(huán)語(yǔ)句轉(zhuǎn)變?yōu)镈o…Loop循環(huán)的例子,從中可以看出,F(xiàn)or…Next循環(huán)是可以用Do…Loop循環(huán)替代的。但是,如果針對(duì)于前面兩個(gè)例題的例子,我們發(fā)現(xiàn),使用For…Next循環(huán)語(yǔ)句要比較方便。也就是說,針對(duì)于這類有規(guī)律、能確定循環(huán)次數(shù)的循環(huán)程序,選用For…Next循環(huán)是最正確選擇。但對(duì)于某些問題,我們無(wú)法確定應(yīng)該執(zhí)行多少次循環(huán),這時(shí)如果還用For…Next循環(huán),就會(huì)不是很方便,對(duì)于這類不能確定循環(huán)次數(shù)的問題,我們可以選用Do…Loop循環(huán)很好的解決這類問題。For…Next循環(huán)與Do…Loop循環(huán)的比較以及如何選擇的問題不能確定循環(huán)次數(shù)的例題例題:對(duì)于求和運(yùn)算S=1+2+3+…x,問:當(dāng)x為多少時(shí),其和S的值恰好超過20。分析:這個(gè)問題可以用循環(huán)語(yǔ)句來(lái)解決,但是,不能確定需要循環(huán)的次數(shù),此時(shí),我們就可以考慮Do…Loop循環(huán)來(lái)解決這類不能確定循環(huán)次數(shù)的問題。程序代碼如下:PrivateSubCommand1_Click()Dimx,sAsSinglex=1s=0DoWhiles<=20s=s+xx=x+1Loopx=x-1MsgBox("當(dāng)x等于"&x&"時(shí),其和恰好超過20。"&"此時(shí)的和s等于"&s)EndSub手動(dòng)分析答案為:當(dāng)x=6時(shí),其和S=21恰好超過20。詳見form3。程序調(diào)試的小技巧如果題目是問:當(dāng)x為多少時(shí),其和S的值恰好超過20000?這么大的數(shù)當(dāng)然不能用手算出結(jié)果,那怎么知道程序的結(jié)果是否正確呢?小技巧:不妨將題目中的數(shù)值該小,比方更改為“其和S的值恰好超過20”,這樣你就能先手算出結(jié)果與程序運(yùn)行后的結(jié)果比對(duì),如果結(jié)果不對(duì),就分析原因,找到正確的方法。比方剛剛的例題中,就分析出了最后程序多執(zhí)行了一次循環(huán)導(dǎo)致最后的x比正確結(jié)果大1,這樣在程序中調(diào)整一下程序就正確了。對(duì)于這類問題,都是采用將數(shù)據(jù)該小,然后用手算驗(yàn)證的方法來(lái)驗(yàn)證程序的。以后還會(huì)屢次碰到。對(duì)程序代碼的分析:〔1〕因?yàn)橐^20,所以循環(huán)條件是:當(dāng)s<=20時(shí),要執(zhí)行循環(huán);〔2〕循環(huán)語(yǔ)句結(jié)束后,為什么要對(duì)x減1?答:因?yàn)樵诒境绦蛑?,直到x=6后,s=21,此時(shí)循環(huán)條件才不滿足,而此時(shí)的x進(jìn)行了加1操作,即此時(shí)的x=7,所以在最后輸出答案時(shí),要減1!本課作業(yè)作業(yè)1:編程求出滿足不等

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論