(3) 遞歸
Private Sub Command1_Click()
Dim a As Integer
a = 2
Call sub1(a)
End Sub
Private Sub sub1(x As Integer)
x = x * 2 + 1
If x < 10 Then
Call sub1(x)
End If
x = x * 2 + 1
Print x
End Sub
(4)遞歸
Private Sub test(x As Integer)
Dim i As Integer
If x <> 0 Then
Call test(x - 1)
For i = 1 To x
Print x;
Next i
End If
End Sub
Private Sub Form_Click()
test 3
End Sub
(5)同名變量
Dim y As Integer
Private Sub Form_Click()
Dim x As Integer,y as integer
x=1 : y=1
Print "x1=";x, "y1=";y
Test
Print "x4=";x, "y4=";y
End Sub
Private Sub Test()
Dim x As Integer
Print "x2=";x, "y2=";y
x=2 : y=3
Print "x3=";x,"y3=";y
End Sub
特例:
1、運行程序在窗體顯示的結(jié)果是:
Private Sub Form_Click()
Dim a As Integer, b As Integer
a = 3: b = 4
Call sub1(a, a)
Print a, b
Call sub1(b, b)
Print a, b
End Sub
Private Sub sub1(x As Integer, y As Integer)
x = x + 2
y = x + y
End Sub
2、運行程序單擊窗體,在窗體上顯示的內(nèi)容是:16 20
Private Sub Form_Click()
Dim n As Integer, m As Integer
n = 1: m = 2
Print n + m + f(n, m) ;
'優(yōu)先執(zhí)行f函數(shù),n,m變化后再運算 “+”
n = 2: m = 1
Print f(n, m) + f(m, n)
'n,m第一次變化后,第二次以變化后的值再調(diào)用
End Sub
Private Function f(n As Integer, m As Integer)
n = n + m
m = m + 3
f = n + m
End Function
3、執(zhí)行下面的程序,在窗體上顯示的輸出結(jié)果是______;如果將A語句改成:Call sub1(b+1,a),則在窗體上顯示的輸出結(jié)果是______。
Private Sub Form_Click()
Dim a As Integer, b As Integer
a = 1: b = 2
Call sub1(a, b) 'A
Print a, b
End Sub
Private Sub sub1(x As Integer, ByVal y As Integer)
x = x + y
y = x + y
End Sub
相關(guān)推薦:北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |