VB程序設(shè)計(jì)-第4章VisualBasic語(yǔ)言程序結(jié)構(gòu).ppt_第1頁(yè)
VB程序設(shè)計(jì)-第4章VisualBasic語(yǔ)言程序結(jié)構(gòu).ppt_第2頁(yè)
VB程序設(shè)計(jì)-第4章VisualBasic語(yǔ)言程序結(jié)構(gòu).ppt_第3頁(yè)
VB程序設(shè)計(jì)-第4章VisualBasic語(yǔ)言程序結(jié)構(gòu).ppt_第4頁(yè)
VB程序設(shè)計(jì)-第4章VisualBasic語(yǔ)言程序結(jié)構(gòu).ppt_第5頁(yè)
已閱讀5頁(yè),還剩44頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

VB程序設(shè)計(jì),第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),本章知識(shí)點(diǎn): 順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu),常用算法的應(yīng)用等。,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.1 順序結(jié)構(gòu)程序設(shè)計(jì) 4.2 選擇結(jié)構(gòu)程序設(shè)計(jì) 4.3 循環(huán)結(jié)構(gòu)程序設(shè)計(jì) 4.4 常用算法舉例,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.1 順序結(jié)構(gòu)程序設(shè)計(jì) 4.1.1 賦值語(yǔ)句 賦值語(yǔ)句一般形式如下: 變量名=表達(dá)式 對(duì)象.屬性=表達(dá)式 功能:完成表達(dá)式的計(jì)算,將計(jì)算結(jié)果賦值給等號(hào)左側(cè)的變量或?qū)ο蟮膶傩浴@纾?x=1 把1賦給變量x Text1.text=“hello!“ 把字符串“hello!“賦給文本框Text1的text屬性,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.1 順序結(jié)構(gòu)程序設(shè)計(jì) 4.1.2 數(shù)據(jù)輸入 用戶(hù)主要通過(guò)三種方式實(shí)現(xiàn)數(shù)據(jù)輸入:使用文本框控件,使用系統(tǒng)提供的InputBox函數(shù),使用磁盤(pán)數(shù)據(jù)文件。本節(jié)主要介紹InputBox函數(shù)。函數(shù)格式如下: 變量名$=InputBox(提示信息,對(duì)話(huà)框標(biāo)題,缺省值) 功能:彈出輸入對(duì)話(huà)框,供用戶(hù)輸入一個(gè)數(shù)據(jù)。 其中: 提示信息:是一個(gè)字符串表達(dá)式,最大長(zhǎng)度不超過(guò)1024個(gè)字符,要來(lái)提示用戶(hù)輸入相關(guān)內(nèi)容,可使用chr(13)+chr(10)實(shí)現(xiàn)換行。 對(duì)話(huà)框標(biāo)題:是字符串表達(dá)式,可省略,默認(rèn)為應(yīng)用程序名。 缺省值:是顯示在對(duì)話(huà)框輸入?yún)^(qū)的默認(rèn)值。,例如,Dim x% x= Val(InputBox(“請(qǐng)輸入一個(gè)數(shù)“ ,“輸入框“,“100 “) 在屏幕上顯示如圖4.2所示的對(duì)話(huà)框:,圖4.2 InputBox對(duì)話(huà)框,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.1 順序結(jié)構(gòu)程序設(shè)計(jì) 4.1.3 數(shù)據(jù)輸出 1)Print方法 Print方法的一般格式如下: 對(duì)象名.PrintSpc(n)|Tab(n),|; 例如:Print Format(1234.5,“00000.00“) Print Format(3.14159,“#.#“) Print Format(3.14159,“#%“) Print Format(3.14159,“$(#.#)“) Print Format(12345.6,“#.#E+“) Print Format(0.123 ,“#.#e-“) Print Format(date,“mm-dd-yy“) Print Format(date,“yy年mm月dd“),圖4 3例4.2執(zhí)行結(jié)果,2. MsgBox函數(shù)和MsgBox方法 函數(shù)形式: 變量% = MsgBox(提示信息,對(duì)話(huà)框類(lèi)型 ,標(biāo)題) (1)“標(biāo)題”和“提示信息”與InputBox函數(shù)中對(duì)應(yīng)的參數(shù)相同; (2)對(duì)話(huà)框類(lèi)型由“按鈕圖標(biāo) +缺省按鈕+模式”4項(xiàng)組成,是整型表達(dá)式,決定信息框按鈕數(shù)目、出現(xiàn)在信息框上的圖標(biāo)類(lèi)型及操作模式如表4.1所示。,表4.1,例如:i=Msgbox(“注意:你輸入的數(shù)據(jù)不正確”,2+48+0+0,“錯(cuò)誤提示”),結(jié)果如圖4.4所示。,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.2 選擇結(jié)構(gòu)程序設(shè)計(jì) 4.2.1 IF語(yǔ)句 1)IfThen語(yǔ)句(單分支結(jié)構(gòu)) If Then 語(yǔ)句塊 End If 或:If Then ,圖4.5 選擇結(jié)構(gòu)流程圖,例4.4 設(shè)密碼。用IF語(yǔ)句來(lái)判定輸入密碼的正確性。 Private Sub Command1_Click() Dim a As String, b As String a = “111111“ b = InputBox(“請(qǐng)輸入密碼:“, “密碼對(duì)話(huà)框“) If a = b Then MsgBox (“密碼正確“) End If End Sub,2)IfThenElse語(yǔ)句(雙分支結(jié)構(gòu)) 格式1: If Then Else End If 格式2: If Then Else ,例4.5 計(jì)算下列分段函數(shù)的值 分析:對(duì)于此分段函數(shù),由于包含X=0 和X= 0 Then y = (1 - x) 2 Else y = x 2 - 1 End If Print “y=“; y End Sub,3)IfThenElseIf語(yǔ)句(多分支結(jié)構(gòu)) 使用形式: If Then ElseIf Then Else 語(yǔ)句塊 n+1 End If,例4.6 輸入一學(xué)生成績(jī),評(píng)定其等級(jí)。方法是:90100分為“優(yōu)秀”,8089分為“良好”,7079分為“中等”,6069分為“及格”,60分以下以為“不合格”。 Private Sub Form_Click() Dim x As Integer x = Val(InputBox(“請(qǐng)輸入成績(jī):“) If x = 90 Then Print “優(yōu)秀“ ElseIf x = 80 Then Print “良好“ ElseIf x = 70 Then Print “中等“ ElseIf x = 60 Then Print “及格“ Else Print “不及格“ End If End Sub,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.2 選擇結(jié)構(gòu)程序設(shè)計(jì) 4.2.2 Select Case語(yǔ)句 Select Case 條件表達(dá)式 Case 表達(dá)式列表1 語(yǔ)句塊1 Case 表達(dá)式列表2 語(yǔ)句塊2 Case Else 語(yǔ)句塊n+1 End Select 說(shuō)明:與是同類(lèi)型的,為下面3種形式之一: (1) 一組枚舉表達(dá)式(用逗號(hào)分隔):例如, 2, 4, 6, 8。 (2) 表達(dá)式1 To 表達(dá)式2 :例如,60 to 100。 (3) Is 關(guān)系運(yùn)算符表達(dá)式:例如,Is 60。,將例4.6 使用Select Case語(yǔ)句來(lái)實(shí)現(xiàn)。 程序段如下: Private Sub Form_Click() Dim x As Integer x = Val(InputBox(“請(qǐng)輸入成績(jī):“) Select Case x Case 90 To 100 Print “優(yōu)秀“ Case 80 To 89 Print “良好“ Case 70 To 79 Print “中等“ Case 60 To 69 Print “及格“ Case Else Print “不及格“ End Select End Sub,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.2 選擇結(jié)構(gòu)程序設(shè)計(jì) 4.2.3 選擇結(jié)構(gòu)的嵌套 如果在選擇結(jié)構(gòu)中又出現(xiàn)IF語(yǔ)句或select語(yǔ)句,就是選擇結(jié)構(gòu)的嵌套 (1) IF Then IF Then Else End If Else IF Then Else End If End IF,(2) IF Then Select Case 條件1_1 Case 值1_1 IF Then Else End If Case值1_2. End Select . End IF,例4.7 在文本框中輸入1100之間的數(shù)字,如果輸入非數(shù)字,或數(shù)字超界,給予提示,并重新輸入。 Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then 回車(chē)鍵的ascii碼值是13 If IsNumeric(Text1.Text) Then x = Val(Text1.Text) If x 100 Then Text1.Text = “ Text1.SetFocus Label1.Caption = “數(shù)字超界,重輸入!“ Else Label1.Caption = “數(shù)字輸入正確!“ End If Else Text1.Text = “ Text1.SetFocus Label1.Caption = “不是輸入的數(shù)字!“ End If End If End Sub,圖 4.7 例4.7運(yùn)行結(jié)果,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.2 選擇結(jié)構(gòu)程序設(shè)計(jì) 4.2.4 條件函數(shù) VB提供的條件函數(shù):IIF函數(shù)和Choose函數(shù),用于簡(jiǎn)單的判斷場(chǎng)合,IIF函數(shù)可代替IF語(yǔ)句,Choose函數(shù)可代替select case語(yǔ)句。 1)IIF函數(shù) 語(yǔ)法格式:IIF(,) 例如:x=-2: y= IIF (x=0,x,-x) y是x的絕對(duì)值。,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.2 選擇結(jié)構(gòu)程序設(shè)計(jì) 4.2.4 條件函數(shù) 2)Choose函數(shù) 語(yǔ)法格式: Choose(,.,) 功能:根據(jù)的值來(lái)確定返回值列表中某個(gè)值。的值為1,返回,如果的值為2,返回,以此類(lèi)推。 例如: x = Val(InputBox(“請(qǐng)輸入1-6之間整數(shù)“) Print Choose(x, “red“, “yellow“, “blue“, “green“, “black“, “white“) 用數(shù)字表示顏色。,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.3循環(huán)結(jié)構(gòu)程序設(shè)計(jì) 4.3.1 Do loop循環(huán) 1)形式1:(當(dāng)型循環(huán)) Do While|Until 語(yǔ)句塊 Exit Do 語(yǔ)句塊 Loop 2)形式2:(直到循環(huán)) Do 語(yǔ)句塊 Exit Do 語(yǔ)句塊 Loop While|Until ,例4.8 用輾轉(zhuǎn)相除法求兩個(gè)自然數(shù)的最大公約數(shù)(gcd)和最小公倍數(shù)(lcm)。 Private Sub Form_Click() Dim n%, m%, nm%, r% m = Val(InputBox(“m=“) n = Val(InputBox(“n=“) nm = n * m If m 0) m = n n = r r = m Mod n Loop Print “最大公約數(shù)=“, n Print “最小公倍數(shù)=“, nm / n End Sub,用Do UntilLoop 循環(huán)來(lái)實(shí)現(xiàn)例4.8,程序代碼如下: Private Sub Form_Click() Dim n%, m%, nm%, r% m = Val(InputBox(“m=“) n = Val(InputBox(“n=“) nm = n * m If m n Then t = m: m = n: n = t r = m Mod n Do Until (r = 0) m = n n = r r = m Mod n Loop Print “最大公約數(shù)=“, n Print “最小公倍數(shù)=“, nm / n End Sub,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.3循環(huán)結(jié)構(gòu)程序設(shè)計(jì) 4.3.2 FORNEXT循環(huán)語(yǔ)句 For 循環(huán)變量初值 to 終值 Step 步長(zhǎng) 語(yǔ)句塊 Exit For Next 循環(huán)變量 說(shuō)明: 語(yǔ)句塊叫循環(huán)體。步長(zhǎng)0時(shí),初值終值;步長(zhǎng)=0時(shí),死循環(huán),循環(huán)次數(shù)計(jì)算公式為: Exit for :退出循環(huán),執(zhí)行next后的下一條語(yǔ)句,例4.9 編程計(jì)算:S=1+2+3+100 Private Sub Form_Click() Dim S%, I% S = 0 累加前變量S為0 For I = 1 To 100 S = S + I Next I Print “ S=“; Format(S, “0000“) End Sub,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.3循環(huán)結(jié)構(gòu)程序設(shè)計(jì) 4.3.3 WhileWend循環(huán) 使用格式如下: While Wend 說(shuō)明:該語(yǔ)句的功能與Do While Loop實(shí)現(xiàn)的循環(huán)完全相同。,例4.11 從鍵盤(pán)輸入一些字符數(shù)據(jù),對(duì)輸入的字符數(shù)據(jù)進(jìn)行計(jì)數(shù)。當(dāng)輸入的字符為“#”,停止計(jì)數(shù)并輸出結(jié)果。 分析:因?yàn)檩斎氪螖?shù)不定,故不使用for 循環(huán)。 代碼如下: Private Sub Form_click() Dim c As String, n As Integer n = 0 c = InputBox(“ 輸入字符:“) While Not (c = “#“) n = n + 1 c = InputBox(“ 輸入字符:“) Wend Print “字符數(shù)是:“; n; “個(gè)“ End Sub,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.3循環(huán)結(jié)構(gòu)程序設(shè)計(jì) 4.3.4 For EachNext循環(huán) 語(yǔ)法格式: For Each 成員 In 數(shù)組 語(yǔ)句塊 Exit For Next 成員 具體使用將在“數(shù)組”章節(jié)講解,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.3循環(huán)結(jié)構(gòu)程序設(shè)計(jì) 4.3.5循環(huán)嵌套多重循環(huán)結(jié)構(gòu) 如果在一個(gè)循環(huán)內(nèi)完整地包含另一個(gè)循環(huán)結(jié)構(gòu),則稱(chēng)為多重循環(huán),或循環(huán)嵌套,嵌套的層數(shù)可以根據(jù)需要而定,嵌套一層稱(chēng)為二重循環(huán),嵌套二層稱(chēng)為三重循環(huán)。,例4.12 打印九九乘法表。 程序代碼如下: Private Sub Form_Click() Dim i%, j%, jj$ For i = 1 To 9 For j = 1 To 9 jj = i Next j Picture1.Print Next i End Sub,例4.13 使用循環(huán)語(yǔ)句在窗體上輸出有*組成的簡(jiǎn)單圖形 Private Sub Form_Click() Dim n As Integer, i%, j% Cls 清屏 n = Val(Text1.Text) 輸入組成圖形的行數(shù) For i = 1 To n Print Tab(20); For j = 1 To i Print “*“; Next j Print Next i End Sub,圖4.14 例4.13運(yùn)行結(jié)果,第四章 Visual Basic語(yǔ)言程序結(jié)構(gòu),4.3循環(huán)結(jié)構(gòu)程序設(shè)計(jì)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論