阅读下列程序。 Private Sub Command1_Click() Dim i As Integer, k As Integer k=2 For i=1 To 3 Print Fun(k) ; Next End Sub Function

admin2013-04-11  21

问题 阅读下列程序。
Private Sub Command1_Click()
Dim i As Integer, k As Integer
k=2
For i=1 To 3
Print Fun(k) ;
Next
End Sub
Function Fun(j As Integer)
Static b
a=0
a=a + 1
b=b + 1
Fun=a  b + j
End Function
程序运行后,单击命令按钮输出结果是

选项 A、2 3 4
B、3 4 5
C、5 6 7
D、3 5 6

答案B

解析 在此题中,被调过程是一个函数过程,它有一个形式参数j,在被调过程声明中,定义了一个参数a,初值为0,一个静态变量b。语句a=a + 1和b = b + 1分别使a和b各增加1,然后返回H的值,因为b是静态变量,所以每次调用同一个参数k时,b会保留前次的数值,使输出结果变化,否则每次输出的结果都将是一样的。根据分析,第一次调用时a=1,b=1,Fun=3;第二次调用时a=1,b=2,Fun=4;第三次调用时a=1,b=3,Fun=5。所以最后的输出结果是345。
转载请注明原文地址:https://kaotiyun.com/show/KnQp777K
0

最新回复(0)