




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第七章 循環(huán)結結構習題 在Visual Basic程序的三種結構中,循環(huán)結構是一種重要結構。循環(huán)的本質:不斷地重復某種動作。對計算機程序而言,循環(huán)必須具備兩個重要因素:1. 在一定的條件下,重復執(zhí)行一組語句2. 必然出現不滿足條件的情況,使循環(huán)終止思考題編寫程序實現計算:1+2+3+4+n的值前后兩項之差都為1,是一個等差數列Sum=0Sum=sum+1Sum=sum+2Sum=sum+3Sum=sum+nSum=sum+ii是從1到n遞增1的數列i=i+1重復執(zhí)行n次Sum=0:i=1Sum=sum+ii=i+1Sum=sum+ii=i+1Sum=sum+ii=i+1Sum=sum+Ii=i
2、+1一、循環(huán)程序設計結構 VB中提供了兩種類型的循環(huán)語句:一種是計數循環(huán)語句;另一種是條件循環(huán)語句。Visual Basic 支持的循環(huán)結構有: DoLoop For.Next WhileWend GoTo 語句重點掌握: DoLoop、 For.Next、 WhileWend等前三種循環(huán)1、DoLoop循環(huán)結構 DoLoop循環(huán)用于事先不知道循環(huán)次數的循環(huán)結構。此種語句四種語法格式: . Do While Loop 語句 . Do Loop While 語句 . Do Until Loop 語句 . Do Loop Until 語句 . Do While Loop語句語法格式:Do Whil
3、e 條件表達式 循環(huán)體 Exit Do 循環(huán)體 LoopTF條件循環(huán)體流程圖說明: 條件表達式可以是一個邏輯表達式,也可以是一個關系表達式,其值應是邏輯型。 Do While和Loop應成對出現。 循環(huán)體中要有改變循環(huán)控制變量值的語句,以避免出現死循環(huán)。 由于該循環(huán)的特點是先判斷條件,然后再決定是否要執(zhí)行循環(huán)體里的語句。所以,這種循環(huán)可以一次也不執(zhí)行循環(huán)體。 Exit Do 表示當遇到該語句時,強制退出循環(huán),執(zhí)行Loop后的下一條語句,一般與If 語句聯用(2). Do Loop While語句語法格式: Do 循環(huán)體 Exit Do 循環(huán)體 Loop While條件表達式流程圖TF條件循環(huán)體
4、注意: 至少要執(zhí)行循環(huán)體一次。 與Do While循環(huán)的區(qū)別:Do While循環(huán)先測試條件是否成立,只有成立才執(zhí)行循環(huán);而該循環(huán)先執(zhí)行循環(huán)體,后測試條件是否成立。語法格式: Do Until條件表達式 循環(huán)體 Exit Do 循環(huán)體 Loop . Do Until Loop語句Do Until Loop語句流程圖 . Do Loop Until語句格式:Do 循環(huán)體 Exit Do 循環(huán)體 Loop Until條件表達式TF條件循環(huán)體Do Loop Until語句流程圖FT條件循環(huán)體2、ForNext循環(huán)結構循環(huán)體Exit For循環(huán)體循環(huán)變量增加步長循環(huán)變量獲得初值FT變量在終值內?For
5、循環(huán)的執(zhí)行過程語法格式:For 循環(huán)變量 = 初值 To 終值 Step 步長 Exit For Next 循環(huán)變量說明 格式中的參數說明: 循環(huán)變量必須為數值型。 循環(huán)的初值、終值和步長都是數值表達式,其值不一定是整數,可以是實數,VB自動取整。其中,增量參數可正可負。如果增量為正,則初值必須小于等于終值,否則不能執(zhí)行循環(huán)體內的語句;如果增量為負,則初值必須大于等于終值。如果沒有設置step,則增量默認為1。 在For語句和Next語句之間的語句序列稱為循環(huán)體,可以是一個或多個語句。 Exit For為強行退出循環(huán)語句。當遇到該語句時,退出循環(huán),執(zhí)行Next的下一個語句。 Next是循環(huán)終端
6、語句,在Next后面的循環(huán)變量與For中的循環(huán)變量必須相同。當循環(huán)是單層循環(huán)時,Next后面的循環(huán)變量可以不寫。 For循環(huán)語句的執(zhí)行過程是:首先把初值賦給循環(huán)變量,接著檢查循環(huán)變量的值是否超過終值,如果超過就不執(zhí)行循環(huán)體,跳出循環(huán),執(zhí)行Next后面的語句;否則執(zhí)行一次循環(huán)體,然后把循環(huán)變量增加步長,再賦給循環(huán)變量,重復上述過程。 當初值等于終值時,不管步長是正數還是負數,都執(zhí)行一次循環(huán)體。 循環(huán)次數由初值、終值和步長決定,計算公式為: 循環(huán)次數=INT(終值 初值)/步長+1) For語句和Next語句必須成對出現,不能單獨使用。 如果要在循環(huán)變量到達終值前退出循環(huán),可用Exit For語句
7、來實現。該語句可以在For循環(huán)中出現多次,且位置不限。 在循環(huán)體中可以使用循環(huán)變量,但一般不再對循環(huán)變量賦值。功能:當While的條件表達式的值是True時執(zhí)行循環(huán)體內的代碼,直到While后的條件表達式的值為False。說明:它與Do Loop語句的差別是:While Wend語句中不能使用Exit語句跳出循環(huán)。語法格式:While 等價于 do While 循環(huán)體 循環(huán)體Wend LOOP3、WhileWend循環(huán)結構二、循環(huán)的嵌套多重循環(huán)結構1、如果在一個循環(huán)內完整地包含另一個循環(huán)結構,則稱為多重循環(huán),或循環(huán)嵌套,2、嵌套的層數可以根據需要而定,嵌套一層稱為二重循環(huán),嵌套二層稱為三重循環(huán)
8、。 上面介紹的幾種循環(huán)控制結構可以相互嵌套,下面是幾種常見的二重嵌套形式:Exit Do與Exit For語句語句功能:強制退出循環(huán)Exit Do語句只能用在Do循環(huán)語句中Exit For 語句只能用在For循環(huán)語句中使用方法:在循環(huán)體中,作為IF語句的子句循環(huán)結構程序的要素:循環(huán)體是什么?循環(huán)控制變量及循環(huán)控制表達式是什么?循環(huán)應如何初始化?對于每次循環(huán),其控制變量如何改變?循環(huán)嵌套舉例一、程序分析舉例題目1:n = 1For i = 1 To 3 For j = 5 To I Step -1 n = n + 2 Next j Print n ; j ; iNext iPrint n ; j
9、 ; i寫出程序的輸出結果:程序分析舉例題目2:k = 0For j = 1 To 2 Print I For i = 1 To 3 k = i + 1 Next I Print I For i = 1 To 2 k = k + 1 Next I Print INext jPrint k ; I寫出程序的輸出結果:程序分析舉例題目3:For m = 1 To 2 For j = 1 To m For k = j To 2 Print m=“ ; m , j=; j , k= , kNext k , j , m寫出程序的輸出結果:注意其寫法:順序,原則,等價形式程序分析舉例題目4:For i =
10、 5 To 4 Step -1 s = 0# For j = i To 3 Step -1 s = s + i * j Next jNext iPrint s寫出程序的輸出結果:總結:循環(huán)嵌套程序的執(zhí)行方式、分析方法書寫循環(huán)嵌套程序的習慣、原則二、程序填空題新的身份證號由18位組成,最低位(右邊)為校驗位,其算法是:10(前17位之和關于10的模)。mstr存放身份證號,md為產生的校驗位,若校驗正確,在L1中顯示“yes”,否則在L1中顯示“no” 。 Mstr$=text1.textmsum = 0 (1) mp = Mid(mstr, i, 1) msum = msum + Val(mp
11、) Next i md = 10 - (2) If md = (3) Then L1.Caption=“Yes” Else L1.Caption=“No” End If以下程序將十六進制整數字符串轉換成十進制整數假設文本框中輸入的十六進制字母符號全部為大寫 s$=text1.text : d=0For i = (1) c = Mid(s$, i, 1) If c = A Then d = (2) - Asc(A) + 10 Else d = d * 16 + Val(c) End If Next (3) Text2.text=d三、程序設計舉例題目1: 輸出一行(20個)星號。 輸出一列(20
12、個)星號。 輸出三行星號,每行20個。 輸出5行三角形形式星號。例題:打印九九乘法表. For i = 1 To 9 For j = 1 To 9 se = i & & j & = & i * j Picture1.Print Tab(j - 1) * 9 + 1); se; Next j Picture1.Print Next i程序設計舉例題目2: (1)判斷一個輸入的數是否為素數。 (2)找出100到200之間的所有素數。題目3: 求S=1!+2!+3!+7!循環(huán)控制變量賦初值及其他相關初始化語句循環(huán)控制條件循環(huán)體語句改變循環(huán)控制變量的語句數值x8?X=1:Sum=0S=X!,累加到Su
13、mX=x+1循環(huán)控制變量賦初值及其他相關初始化語句循環(huán)控制條件循環(huán)體語句改變循環(huán)控制變量的語句k=x?K=1X=val(text1.text)S=S*KK=k+1循環(huán)控制變量賦初值及其他相關初始化語句循環(huán)控制條件改變循環(huán)控制變量的語句數值X8?X=1:Sum=0Sum=Sum+S:X=X+1初始化語句循環(huán)控制條件循環(huán)體語句改變循環(huán)控制變量的語句k=X?S=1:K=1S=S*KK=k+1Sum=0For x=1 to 8 s=1 for k=1 to x s=s*k next k sum=sum+sNext x練習:教材習題P119,二,2程序設計舉例題目4:窮舉法 for a=1 to 9 for b=0 to 9 for c=0 to 9 next c , b , a(1)請用上面的循環(huán)方式找出所有水仙花數(2)教材P114,例6-13(3)教材習題:P119,二,1以下代碼用于計算的近似值,當級數第i項的絕對值小于10-5時計算結束,同時調用內部函數進行驗證。這里,x為弧度。x=3.14159/6i=1:t=x:sinx=tDo While (1) i=i+2t= (2) sinx=sinx+tLoopPrint sinx, (3) 下面的程序用于對9位的準考證號進行校驗。參數mno存放準考證號,mjy存放產生的校驗位,tag判斷校驗正確否,若校
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療器械質量檢測服務合同
- 職場辦公技能培訓教育范文
- 高考語文復習:人物傳記類文言文專練
- 電線電纜采購合同書
- 法律行業(yè)律師服務費用免責協議
- 經典童話白雪公主的解讀與賞析
- 高考英語完形填空專題集中訓練含參考答案(5份)
- 農村居民公共服務需求滿足指導手冊
- 問題解決指南
- 金融科技服務風險免責合同
- 大班語言活動-海豹到哪里去了
- 小班社會《認識家用電器》課件
- 高考概率大題必練20題(理科)-含答案
- 涼水井煤礦礦山地質環(huán)境與土地復墾方案
- 果實酚類和揮發(fā)性物質含量特征及其與果實品質關系的研究
- 2023年東華高級中學中考自招數學復習題及答案解析
- 結果比過程重要辯論賽
- JTG C10-2007 公路勘測規(guī)范
- 工程結算審核項目投標技術方案造價咨詢服務方案
- 高中英語2024屆新高考詞匯轉換匯總(共六組)
- 2024年廣州市高三一模高考英語試卷試題答案詳解(含作文范文)
評論
0/150
提交評論