VisualBasic程序設計_第1頁
VisualBasic程序設計_第2頁
VisualBasic程序設計_第3頁
VisualBasic程序設計_第4頁
VisualBasic程序設計_第5頁
已閱讀5頁,還剩44頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Visual Basic程序設計 第6章 過程子程序和函數 Visual BASIC 程序設計 子程序(子程序(Sub過程)過程) 函數(函數(Function過程)過程) 參數傳遞參數傳遞 標準模塊標準模塊 程序調試程序調試 過程的嵌套調用和遞歸調用過程的嵌套調用和遞歸調用 鼠標和鍵盤事件鼠標和鍵盤事件 Visual BASIC 程序設計 Visual BASIC 程序設計 VB應用程序 .vbp 窗體模塊 .frm 標準模塊 .bas類模塊 .cls 函數過程 (Function) 事件過程 子程序 (Sub) 函數過程 (Function) 子程序 (Sub) 程序: 模塊: 過程: V

2、isual BASIC 程序設計 Visual BASIC 程序設計 Sub過程不過程不 直接返回值直接返回值 Functio n過程要過程要 返回一個返回一個 值值 Visual BASIC 程序設計 Public Sub Swap (x,y)Public Sub Swap (x,y) Dim t Dim t t = x : x = y : y = tt = x : x = y : y = t End SubEnd Sub Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BASIC

3、程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 定義子程序 Swap: Sub Swap (x,y) Dim t t = x : x = y : y = x End Sub 調用子程序 Swap: . Swap a , b 交換 . Visual BASIC 程序設計 Visual BASIC 程序設計 傳址傳址 : Sub Swap (ByRef x, ByRef y) Dim t t = x : x = y : y = x End Sub . Swap a , b 交換交換 形參 x (x與a指向同一位置) 形參 y (

4、y與b指向同一位置) 交換 傳值傳值 x: 543 y: 21 傳值傳值 : Sub Swap (ByVal x, ByVal y) Dim t t = x : x = y : y = x End Sub . Swap a , b 交換交換? 543實參 a: 21 實參 b: 傳址傳址 543實參 a: 21 實參 b: 交換 543 21 543 21 實參內容不變實參內容不變! Visual BASIC 程序設計 c b a Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BAS

5、IC 程序設計 計算 1!2!3!10! 提示:先定義一個求階乘fac函數過程 VisualBasic程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 過程的遞歸調用和過程的嵌套 說明:說明:在一個過程中調用另外一個過程, 稱為過程的嵌套調用嵌套調用;而過程直接或間接 地調用其自身,則稱為過程的遞歸調用遞歸調用。 VisualBasic程序設計 Visual BASIC 程序設計 過程的嵌套 Sub主過程 Call子過程1 End Sub Sub子過程1 Call子過程2 End Sub S

6、ub子過程2 End Sub VisualBasic程序設計 Visual BASIC 程序設計 案例演示最大公約數最小公倍數的計案例演示最大公約數最小公倍數的計 算。算。 VisualBasic程序設計 Visual BASIC 程序設計 過程的遞歸調用 【例】利用遞歸求階乘。 No ImageNo Image VisualBasic程序設計 Visual BASIC 程序設計 編寫求階乘的函數過程Fact: Function Fact(ByVal a As Integer) As Integer If a 1 Then fact= a * Fact(a - 1) 遞歸調用 Else Fac

7、t= 1 End If End Function Private Sub Command1_Click() Dim m As Long, n As Long n = Val(Text1.Text) m = Fact(n) 調用函數過程調用函數過程Fact Text2.Text = str(m) End Sub VisualBasic程序設計 Visual BASIC 程序設計 【例】利用遞歸的方法來求斐波那契數列。【例】利用遞歸的方法來求斐波那契數列。 No Image No Image No Image VisualBasic程序設計 Visual BASIC 程序設計 編寫函數過程編寫函數

8、過程Fibo: Function Fibo(ByVal n As Integer) As Integer If n 2 Then Fibo = Fibo(n - 1) + Fibo(n - 2) 遞歸調用遞歸調用 Else Fibo = 1 End If End Function VisualBasic程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 共生成20個數組Unit (0)Unit (9), Coef (0)Coef (9) Unit和Coef原是變體型數組,其中 每個元素都是一個變體型變量,經 Array函數賦值后都變成了數組。 3. Unit(0)Unit(9)中存放單位, Coef (0) Coef (9)中存放轉換系數 說 明 Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BASIC 程序設計 Visual BAS

溫馨提示

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

最新文檔

評論

0/150

提交評論