版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第4章循環(huán)結(jié)構(gòu)(二)4.1.1
For…Next
循環(huán)格式:For<循環(huán)變量>=<初值>To<終值>[Step<步長(zhǎng)>]
語(yǔ)句塊
[ExitFor]
語(yǔ)句塊Next<循環(huán)變量>4.1.2
While…Wend循環(huán)格式:While條件
循環(huán)體Wend循環(huán)初始狀態(tài)循環(huán)條件循環(huán)體TF4形式2:Do
語(yǔ)句塊
[ExitDo
語(yǔ)句塊]Loop{While|Until}<條件>
4.1.3
Do…Loop
循環(huán)形式1:Do{While|Until}<條件>
語(yǔ)句塊
[ExitDo
語(yǔ)句塊]Loop引例密碼驗(yàn)證ss=“111”Form1.HideMsgBoxForm1.ShowMsgBox:2TFss=“111”MsgBoxForm1.ShowMsgBox:1TF…ss=“111”Form1.HideMsgBoxForm1.ShowMsgBox:2TFss=“111”MsgBoxForm1.ShowMsgBox:1TFss=“111”MsgBoxForm1.ShowMsgBox:0TFForm1.Hidess=“111”MsgBoxForm1.ShowMsgBox:2TFForm1.Hidess=“111”MsgBoxForm1.ShowMsgBox:2TFi<=3i=1i=i+1ss=“111”Form1.HideMsgBoxForm1.ShowTFss=“111”MsgBoxForm1.ShowMsgBox:0TFMsgBox:2ss=“111”MsgBoxForm1.ShowMsgBox:1TF實(shí)例4-1累加PrivateSubCommand1_Click()DimiAsInteger,sumAsLong,nAsLongn=Val(Text1.Text)Fori=1Tonsum=sum+1NextiText2.Text=sumEndSubsum=sum+i縮進(jìn)格式PrivateSubCommand1_Click() DimiAsInteger,sumAsLong,nAsLong
n=Val(Text1.Text)
Fori=1Tonsum=sum+iNextiText2.Text=sumEndSub實(shí)例4-2累乘說(shuō)明:1、本程序僅用來(lái)計(jì)算積<=5000的累乘值,要求n!怎么辦?要求用While循環(huán)。2、自動(dòng)計(jì)算與手動(dòng)計(jì)算結(jié)果不一致,為什么?怎么改?3、手動(dòng)計(jì)算中的窗體級(jí)變量。DimjAsInteger,factAsLongPrivateSubCommand2_Click()Ifj=0Thenfact=1Iffact<=5000Thenj=j+1fact=fact*jtxtcyc.Text=jtxtfac.Text=factElseCommand2.Enabled=FalseEndIfEndSub手動(dòng)計(jì)算PrivateSubCommand1_Click()DimiAsInteger,facAsLongi=1fac=1Whilefac<=5000fac=fac*ii=i+1txtcyc.Text=itxtfac.Text=facWendEndSub自動(dòng)計(jì)算說(shuō)明:1、本程序僅用來(lái)計(jì)算積<=5000的累乘值,要求n!怎么辦?要求用While循環(huán)。2、自動(dòng)計(jì)算與手動(dòng)計(jì)算結(jié)果不一致,為什么?怎么改?3、手動(dòng)計(jì)算中的窗體級(jí)變量。i<txtcyc.texti=i+1fac=fac*i實(shí)例4-3隨機(jī)數(shù)與素?cái)?shù)‘產(chǎn)生m個(gè)>=10且<=99隨機(jī)數(shù),并依次顯示出來(lái)m=Val(Text1)DoRandomize‘本語(yǔ)句可使下面的r,每次產(chǎn)生不同的隨機(jī)數(shù)
r=Int(Rnd*90+10)Lblrnd=Lblrnd+""+Str(r)n=n+1Fori=2Tor–1‘判斷素?cái)?shù)
IfrModi=0ThenExitForNextiLoopWhilen<mIfi>=rThen‘統(tǒng)計(jì)信息Ifr>MaxThenMax=r…EndIf循環(huán)中容易出的問(wèn)題:死循環(huán)循環(huán)體的正常運(yùn)行一般通過(guò)循環(huán)體中對(duì)循環(huán)變量的改變來(lái)控制對(duì)循環(huán)條件的判斷,使得循環(huán)能夠終止循環(huán)初始狀態(tài)循環(huán)條件循環(huán)體TF如果某變量控制的不好,則可能造成永遠(yuǎn)無(wú)法終止循環(huán)的情況稱(chēng)之為“死循環(huán)”死循環(huán)S=0i=1i<=50S=S*2i=i-1TFS=0i=1i<=50S=S*2i=1TFS=0i=1i<=50S=S*2TF正確循環(huán)的規(guī)律i<xTFi
不斷增大i>xTFi
不斷減小164.1.4循環(huán)的嵌套在一個(gè)循環(huán)體內(nèi)又包含了一個(gè)完整的循環(huán)結(jié)構(gòu)稱(chēng)為循環(huán)的嵌套或多重循環(huán)。外部的循環(huán)稱(chēng)為外循環(huán),內(nèi)嵌的循環(huán)稱(chēng)為內(nèi)循環(huán)。PrivateSubForm_Click()Forx=1To5Fory=1To5Printy;NextyPrintNextxEndSub實(shí)例4-4:圖形輸出內(nèi)循環(huán)變量與外循環(huán)變量不能同名;外循環(huán)必須完全包含內(nèi)循環(huán),不能交叉;不能從循環(huán)體外轉(zhuǎn)向循環(huán)體內(nèi),反之則可以。
Forii=1To10Forii=1To20
…Nextii Nextii
Forii=1To10
Forjj=1To20…
Nextjj
Nextii
Forii=1To10
Forjj=1To20…
Nextii
Nextjj
Forii=1To10
…
Nextii
Forii=1To10
…
Nextii注意補(bǔ)例1求1!+2!+…+10!PrivateSubForm_click()DimsAsLong,fAsLong,iAsInteger,jAsIntegers=0Fori=1To10
f=1
Forj=1Toif=f*jNextjs=s+fNextiPrint"1!+2!+...+10!=";sEndSubDimjAsIntegerDimiAsIntegerj=1s=0Fori=1To10j=j*is=s+jNextiForx=1To5Fory=1ToxPrinty;NextyPrintNextxForx=5To1Step-1Fory=1ToxPrinty;NextyPrintNextx補(bǔ)例2讀程序,寫(xiě)結(jié)果補(bǔ)例3根據(jù)結(jié)果,寫(xiě)程序:Forx=5To1Step-1Fory=5ToxStep-1Printy;NextyPrintNextxForx=5To1Step-1Fory=5To6-xStep-1Printy;NextyPrintNextx21補(bǔ)例4打印九九乘法表關(guān)鍵:①內(nèi)外循環(huán)變量與被乘數(shù)和乘數(shù)關(guān)系 ②輸出格式控制
PrivateSubCommand1_Click()Picture1.ClsDimseAsStringPicture1.PrintTab(35);"九九乘法表"Picture1.PrintTab(35);"---------------"Fori=1To9Forj=1To9se=j&"×"&i&"="&i*jPicture1.PrintTab((j-1)*9+1);se;NextjPicture1.PrintNextiEndSub練習(xí):打印上三角或下三角程序如何改動(dòng)?可通過(guò)微軟拼音輸入法面板輸入“×”等特殊符號(hào),或在Word中輸入,再?gòu)?fù)制、粘貼編程練習(xí):4.2案例:譯碼器1、密碼驗(yàn)證:PassWordChar=“*”DimnAsIntegerPrivateSubCmdok_Click()Constpassword="111",name="111"n=n+1Ifn<=3ThenIfTxtname=""OrTxtpassword=""ThenMsgBox"必須輸入姓名和密碼",64,"提示"ElseIfTxtname=nameAndTxtpassword=passwordThenFrm1.HideFrm2.ShowElseMsgBox"姓名和密碼錯(cuò)誤",48,"警告"EndIfEndIfElseEndEndIfEndSubn:計(jì)數(shù)器兩個(gè)窗體DimnAsInteger‘n=0PrivateSubCmdok_Click()…n=n+1…EndSub‘n=1第一次單擊DimnAsInteger‘n=1PrivateSubCmdok_Click()…n=n+1…EndSub‘n=2第二次單擊DimnAsInteger‘n=2PrivateSubCmdok_Click()…n=n+1…EndSub‘n=3第三次單擊2、譯碼器控制結(jié)構(gòu):每三位數(shù)字一個(gè)字符循環(huán)變量賦初值刪原文左側(cè)空格ori=LTrim(Txtori)orip=Mid(ori,n,3)Orip<>“###”取第一組數(shù)字n=1n=n+3譯碼orip=Mid(ori,n,3)Whileorip<>"###“Wendn=n+3..... orip=Mid(ori,n,3)譯碼一Orip是字符?IfVal(orip)>=0AndVal(or
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025合同法學(xué)教學(xué)大綱
- 2025有限公司員工試用期合同
- 2025商業(yè)地產(chǎn)銷(xiāo)售代理合同
- 二零二五年度地質(zhì)災(zāi)害應(yīng)急土方運(yùn)輸服務(wù)合同3篇
- 2025年度養(yǎng)殖場(chǎng)養(yǎng)殖廢棄物資源化利用合同3篇
- 2025年度科技創(chuàng)新園區(qū)拆遷房產(chǎn)分割與產(chǎn)業(yè)扶持協(xié)議3篇
- 2025年度林業(yè)產(chǎn)業(yè)發(fā)展競(jìng)業(yè)禁止模板木方交易協(xié)議3篇
- 二零二五年度農(nóng)村集體建設(shè)用地個(gè)人地基買(mǎi)賣(mài)合同2篇
- 二零二五年度高速公路建設(shè)項(xiàng)目承包協(xié)議3篇
- 2025年度水上旅游安全事故處理與救援服務(wù)協(xié)議3篇
- 礦業(yè)公司規(guī)章制度匯編
- 《高低壓配電室施工工藝標(biāo)準(zhǔn)》
- 2024年太陽(yáng)能光伏組件高空清洗作業(yè)人員安全保障合同3篇
- 大學(xué)學(xué)業(yè)規(guī)劃講座
- 《國(guó)家課程建設(shè)》課件
- 浙江省衢州市2023-2024學(xué)年高一上學(xué)期1月期末數(shù)學(xué)試題 含解析
- 2024年貴州貴陽(yáng)市貴安新區(qū)產(chǎn)業(yè)發(fā)展控股集團(tuán)有限公司招聘筆試參考題庫(kù)含答案解析
- 美國(guó)RAZ分級(jí)讀物目錄整理
- 全口義齒-印模與模型-課件PPT
- 地方課程六年級(jí)上冊(cè)
評(píng)論
0/150
提交評(píng)論