vb備考課件-精品難點(diǎn)第三章-第四章.ppt_第1頁(yè)
vb備考課件-精品難點(diǎn)第三章-第四章.ppt_第2頁(yè)
vb備考課件-精品難點(diǎn)第三章-第四章.ppt_第3頁(yè)
vb備考課件-精品難點(diǎn)第三章-第四章.ppt_第4頁(yè)
vb備考課件-精品難點(diǎn)第三章-第四章.ppt_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余62頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、(1) 順序結(jié)構(gòu) 順序結(jié)構(gòu)就是系統(tǒng)按照程序中語(yǔ)句出現(xiàn)的先后次序執(zhí)行各項(xiàng)操作。(流水賬) (2) 分支結(jié)構(gòu) 分支結(jié)構(gòu)就是系統(tǒng)根據(jù)判斷條件,選擇一條符合條件的順序結(jié)構(gòu)程序塊來(lái)執(zhí)行。(三岔口、十字路口) (3) 循環(huán)結(jié)構(gòu) 循環(huán)結(jié)構(gòu)就是根據(jù)條件判斷,不斷重復(fù)的執(zhí)行一部分代碼,直到該條件要求你停止重復(fù)執(zhí)行為止。(搬運(yùn)工),三種基本程序結(jié)構(gòu),Dim x As Integer, y As Integer, sum As Integer, avg As Integer 聲明變量 x = 100 y = 200 賦值 sum = x + y avg = (x + y) / 2 程序計(jì)算 Print 兩數(shù)的和為:

2、; sum Print “兩數(shù)的平均值為:”; avg 打印結(jié)果,(一)順序結(jié)構(gòu),1. 賦值語(yǔ)句(P57) 形式:變量名表達(dá)式 對(duì)象.屬性表達(dá)式 例:s!=0.1 Text1.Text “Welcome to Visual Basic 6.0 World” 只有當(dāng)表達(dá)式是一種與變量兼容的數(shù)據(jù)類(lèi)型時(shí),該表達(dá)式的值才可以賦值給變量 。如 i%=“abc” ( 字符串不能賦值給數(shù)值變量) 執(zhí)行過(guò)程:先求表達(dá)式的值,然后將值賦值給左邊的變量。 如: x = x + 1 注意:雖然賦值號(hào)與關(guān)系運(yùn)算符等于號(hào)都用“=”表示,VB系統(tǒng)會(huì)根據(jù)所處的位置自動(dòng)判斷是何種意義的符號(hào),順序結(jié)構(gòu)包含的內(nèi)容, 賦值符號(hào)“=

3、” 右邊可以是變量、常量、函數(shù)調(diào)用等特殊的表達(dá)式。 左邊一定只能是變量名或?qū)ο蟮膶傩砸谩?下面的賦值語(yǔ)句都是錯(cuò)的: 5=X Abs(X)=20,2. 與用戶(hù)交互函數(shù)和過(guò)程,(1) InputBox函數(shù) InputBox(提示,標(biāo)題,缺省,x 坐標(biāo)位置,y坐標(biāo)位置) 其中:提示 提示信息,標(biāo)題 對(duì)話(huà)框標(biāo)題,缺省輸入?yún)^(qū)缺省值 函數(shù)返回字符類(lèi)型. 例要在屏幕上顯示如下的對(duì)話(huà)框:,提示,缺省,標(biāo)題,sn = InputBox(請(qǐng)輸入你的姓名 + vbCrLf + 然后單擊確定, _ 輸入框, 王曉明),(2) MsgBox函數(shù)和MsgBox過(guò)程 函數(shù)形式: 變量% = MsgBox(提示,按鈕圖標(biāo)

4、,標(biāo)題) 過(guò)程形式: MsgBox 提示,按鈕圖標(biāo) ,標(biāo)題 提示:必需項(xiàng) 按紐:可選項(xiàng)(P64,表3-9) 常數(shù) 值 vbOKOnly 0 只顯示OK按紐 vbOKCancel 1 只顯示Ok和Cancel按紐 vbAbortRetryIgnore 2 只顯示Abort、Retry、Ignore按紐 vbYesNoCancel 3 只顯示Yes、No、Cancel按紐 標(biāo)題:可選項(xiàng),例要在屏幕上顯示如下的對(duì)話(huà)框:,提示,標(biāo)題,按鈕,圖標(biāo),s=MsgBox(密碼錯(cuò)誤! , 5+16, 輸入密碼) 所按按紐 S返回值 確定 1 取消 2 終止 3 重試 4 忽略 5,vbRetryCancel +

5、 vbCritical,3、 注釋語(yǔ)句,其語(yǔ)法格式為:Rem 或 說(shuō)明:1. 在Rem關(guān)鍵字和注釋內(nèi)容之間要加一個(gè)空格。 2. 如果在其他語(yǔ)句行后面使用Rem關(guān)鍵字,必需用冒號(hào)(:)與語(yǔ)句隔開(kāi)。若用英文單引號(hào)“”,則在其他語(yǔ)句行后面不必加冒號(hào)(:)。 例如: Const PI=3.1415925 符號(hào)常量PI S=PI*r*r : Rem 計(jì)算圓的面積,VB中的事件過(guò)程命名格式為: 對(duì)象_事件,比如: Command1_Click() Text1_Change() Text1_KeyPress() Form_Click()(跟前幾個(gè)有何差別) Form_Load(): 窗體運(yùn)行的時(shí)候自動(dòng)執(zhí)行,

6、效果如何?,VB中的事件過(guò)程含義,生活中的很多道理或者策略都是一種分支結(jié)構(gòu),比如論持久戰(zhàn)中的“敵進(jìn)我退,敵駐我擾,敵疲我打,敵退我追”就是一個(gè)典型的分支。具體程序如下: If敵進(jìn) Then 我退 ElseIf敵駐 Then 我擾 ElseIf敵疲 Then 我打 ElseIf敵退 Then 我追 EndIf,(二)選擇結(jié)構(gòu)(分支結(jié)構(gòu))(P69),1. IfThen語(yǔ)句(單分支結(jié)構(gòu)) If Then 語(yǔ)句塊 End If 或 If Then 例: If xy Then t=x x=y y=t End If 或 If xy Then t=x: x=y: y=t,(二)選擇結(jié)構(gòu)(分支結(jié)構(gòu)),2. I

7、fThenElse語(yǔ)句(雙分支結(jié)構(gòu)) If Then Else End If 或 If Then Else 例: If xy then max=x else max=y End if,3. IfThenElseIf語(yǔ)句(多分支結(jié)構(gòu)),形式: If Then ElseIf Then Else 語(yǔ)句塊 n+1 End If,不管有幾個(gè)分支,依次判斷,當(dāng)某條件滿(mǎn)足,執(zhí)行相應(yīng)的語(yǔ)句塊,其余分支不再執(zhí)行;若條件都不滿(mǎn)足,且有Else子句,則執(zhí)行該語(yǔ)句塊,否則什么也不執(zhí)行。 ElseIf不能寫(xiě)成 Else If,4. Select Case語(yǔ)句(情況語(yǔ)句),形式: Select Case 變量或表達(dá)式 C

8、ase 表達(dá)式列表1 語(yǔ)句塊1 Case 表達(dá)式列表2 語(yǔ)句塊2 Case Else 語(yǔ)句塊n+1 End Select,: 與同類(lèi)型的下面四種形式之一: 表達(dá)式 如: “A” 一組枚舉表達(dá)式(用 逗號(hào)分隔) 如:2,4,6 表達(dá)式1 To 表達(dá)式2 如:60 To 100 Is 關(guān)系運(yùn)算符表達(dá)式 如: Is 60,函數(shù)計(jì)算,1n=0 xn=1 P(n,x)= (3x2-1)/2n=2 (5x2-3)-x/2n=3 (35x2-30)*x2+3)/8n=4,Select Case n Case 0 p = 1 Case 1 p = x Case 2 p = (3 * x * x - 1) /

9、2 Case 3 p = (5 * x * x - 3) * x / 2 Case 5 p = (35 * x * x - 30) * x * x + 3) / 8 Case Else Print n的值不正確 End Select,函數(shù)計(jì)算,5選擇結(jié)構(gòu)的嵌套,If語(yǔ)句的嵌套是指 If 或 Else 后面的語(yǔ)句塊中又包含 If 語(yǔ)句。 形式如下: If Then If Then End If End If,例:已知x,y,z三個(gè)數(shù),使得xyz。 用一個(gè)IF語(yǔ)句和一個(gè)嵌套的IF語(yǔ)句 實(shí)現(xiàn): If xy Then t=x: x=y: y=t If yz Then t=y: y=z: z=t If

10、xy Then t=x: x=y: y=t End If End If If語(yǔ)句的嵌套注意事項(xiàng):書(shū)寫(xiě)鋸齒型; If 與End If配對(duì)。,例:判斷一元二次方程ax2+bx+c=0根的方式的程序,Dim a!, b!, c! a = InputBox(“請(qǐng)輸入a的值”) b = InputBox(“請(qǐng)輸入b的值”) c = InputBox(“請(qǐng)輸入c的值”) If _ Then delta = b 2 - 4 * a * c If _ Then Print “方程有兩個(gè)實(shí)根” ElseIf delta = 0 Then Print “方程有兩個(gè)相等實(shí)根” Else Print “方程有兩個(gè)虛根

11、” End If,Else If _ Then Print “方程僅有一個(gè)根” Else Print “方程無(wú)意義” End IfEnd If,提示: 當(dāng)a0 是,有兩個(gè)根。 設(shè)delta=b2-4ac 當(dāng)delta0時(shí),有兩個(gè)不同的實(shí)根。 當(dāng)delta=0時(shí),有兩個(gè)相同的實(shí)根。 當(dāng)delta0時(shí),有一個(gè)根。當(dāng)a=0時(shí),b=0方程無(wú)意義。,(三)循環(huán)結(jié)構(gòu),1. For循環(huán)語(yǔ)句 (一般用于循環(huán)次數(shù)已知) For 循環(huán)變量初值 to 終值 Step 步長(zhǎng) 語(yǔ)句塊 Next 循環(huán)變量,語(yǔ)句塊 Exit For 語(yǔ)句塊,例:,For i=2 To 13 Step 1 Print i ; Next i

12、Print “i=“, i,3,程序: Private Sub Form_Click() For i = 1 To 5 Print Tab(i); String(6 - I, ); Print Spc(6); String(I, ) Next i End Sub,循環(huán)執(zhí)行次數(shù) 輸出為:2 5 8 11 I=14,例:以下程序計(jì)算2到50間所有偶數(shù)的和,請(qǐng)補(bǔ)充完該程序。,Sub mult()Dimsum As IntegerDim i as integersum=0For _ to 50 If i Mod 2=_ Then _Next i Print sum End Sub,i=2 0 sum=

13、sum+i,2-1. DoLoop循環(huán)語(yǔ)句(用于控制循環(huán)次數(shù)未知),形式1:(當(dāng)型循環(huán)) Do While 語(yǔ)句塊 Exit Do 語(yǔ)句塊 Loop,形式2:(直到循環(huán)) Do 語(yǔ)句塊 Exit Do 語(yǔ)句塊 Loop While ,2-2. DoLoop循環(huán)語(yǔ)句(用于控制循環(huán)次數(shù)未知),形式1:(當(dāng)型循環(huán)) Do Until 語(yǔ)句塊 Exit Do 語(yǔ)句塊 Loop,形式2:(直到循環(huán)) Do 語(yǔ)句塊 Exit Do 語(yǔ)句塊 Loop Until ,例:下列程序段的運(yùn)行結(jié)果是:,Sub sel()Dim n as Integeri=21:n=3Do Until i n i=i-nLoopPr

14、int “i=“;i End Sub,i=21(Do Until in),i=0(Do Until in),i=21(Do while in),i=3(Do while in),i=18(Loop Until in),i=0(Loop Until in),i=18(Loop while in),i=3(Loop while in),while,Until i n,while,例:以下程序計(jì)算1222+32-42+(N-1)2-N2,請(qǐng)補(bǔ)充完該程序。,N = Val(InputBox(請(qǐng)輸入大于零的偶數(shù))s = 0i = 1c = 1Dos = _ c = _ i = i + 1Loop Whi

15、le i = NPrint s,s + c*(i*10+2) -c,3. while.wend語(yǔ)句,使用格式如下: While Wend 說(shuō)明:該語(yǔ)句的功能與Do While .Loop實(shí)現(xiàn)的循環(huán)完全相同。,比較三種循環(huán)結(jié)構(gòu),4.循環(huán)的嵌套,一個(gè)循環(huán)體內(nèi)又包含了一個(gè)完整的循環(huán)結(jié)構(gòu)稱(chēng)為循環(huán)的嵌套. 打印九九乘法表. 對(duì)于循環(huán)的嵌套,要注意以下事項(xiàng): (1) 內(nèi)循環(huán)變量與外循環(huán)變量不能同名; (2) 外循環(huán)必須完全包含內(nèi)循環(huán),不能交叉; (3) 不能從循環(huán)體外轉(zhuǎn)向循環(huán)體內(nèi),也不能從外循環(huán)轉(zhuǎn)向內(nèi)循環(huán), 反之則可以。,Private Sub Command1_Click() 循序結(jié)構(gòu)賦值語(yǔ)句、輸入輸出

16、語(yǔ)句 分支結(jié)構(gòu)單分支結(jié)構(gòu)(if then) 雙分支結(jié)構(gòu)(if then else) 多分之結(jié)構(gòu) 循環(huán)結(jié)構(gòu)do loop、for .next while .wend End Sub,5、程序的基本結(jié)構(gòu)與過(guò)程,函數(shù)與過(guò)程定義及其相互調(diào)用 形參與實(shí)參的相互關(guān)系及差別 參數(shù)傳遞的2種方式 變量的作用域 多種變量類(lèi)型與參數(shù)傳遞的復(fù)雜程序分析,函數(shù)過(guò)程及作用域,(一)過(guò)程概述,在VB5.0/6.0中,除了系統(tǒng)提供的內(nèi)部函數(shù)過(guò)程和事件過(guò)程外,用戶(hù)可自定義過(guò)程下列兩種過(guò)程: “Sub”保留字開(kāi)始的為子過(guò)程 “Function”保留字開(kāi)始的為函數(shù)過(guò)程 子過(guò)程和函數(shù)過(guò)程的區(qū)別: 函數(shù)過(guò)程有返回值。 而子過(guò)程無(wú)返回

17、值。,(二)子過(guò)程及函數(shù)過(guò)程的定義形式,StaticPublic|PrivateSub 子過(guò)程名(參數(shù)列表) 局部變量或常數(shù)定義 語(yǔ)句 End Sub StaticPublic|PrivateFunction 函數(shù)過(guò)程名(參數(shù)列表) As 類(lèi)型局部變量或常數(shù)定義 語(yǔ)句 函數(shù)名 = 返回值 End Function,語(yǔ)句 Exit Sub 語(yǔ)句,語(yǔ)句 函數(shù)名 = 返回值 Exit Function 語(yǔ)句 函數(shù)名 = 返回值,例:課本P96,過(guò)程的分類(lèi),過(guò)程分為自定義過(guò)程與事件過(guò)程,區(qū)分的關(guān)鍵在于過(guò)程的名稱(chēng)。 自定義過(guò)程: 普通的過(guò)程名稱(chēng),如: Private sub abc() 事件過(guò)程: Private sub Command1_click Private sub Form1_click Private sub Form1_Load,(三) 過(guò)程的調(diào)用,1 子過(guò)程的調(diào)用: 子過(guò)程名 參數(shù)列表 或 Call 子過(guò)程名(參數(shù)列表) 2 函數(shù)過(guò)程的調(diào)用: 變量名 = 函數(shù)過(guò)程名(參數(shù)列表) 子過(guò)程中定義的參數(shù)列表稱(chēng)之為形參。 父過(guò)程中

溫馨提示

  • 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)論