更新时间2020-12-13 12:14:20
Function F(a As Integer) b = 2 Static c As Integer b = b + 1 c = c + 2 F = a + b + cEnd FunctionPrivate Sub Command1_Click() Dim a As Integer a = 5 For i = 1 To 3 Print F(a); Next iEnd Sub 写出程序运行时,单击命令按钮在窗体上的输出结果。
结果为
10 12 14
分析:
For i = 1 To 3 Print F(a); //3次调用F(a) Next i 第一次调用 a=5所以是F(5) b=2 b=b+1=3 c=c+2=2 '静态变量,初值为0 F=a+b+c=5+2+3=10 结果为10 第二次调用 因为F(a)是传值,所以a不变 a=5所以仍是F(5) b=2 b=b+1=3 c=2+2=4 '静态变量,值保留上次的 F=a+b+c=5+4+3=12 结果为12 第三次调用 同样是a=5所以是F(5) b=2 b=b+1=3 c=4+2=6 '静态变量,值保留上次的 F=a+b+c=5+6+3=14 结果为14