有如下的程序。 Private Sub Command1_Click() Dim k As Integer, m As Integer Dim P As Integer k=4: m=1 P=Fun(k, m) : Print P; P=F

admin2010-11-20  35

问题 有如下的程序。
Private Sub Command1_Click()
Dim k As Integer, m As Integer
Dim P As Integer
k=4: m=1
P=Fun(k, m) : Print P;
P=Fun(k, m) : Print P
End Sub
Private Function Fun(a As Integer, b As Integer)
Static m As Integer, i As Integer
m=5: i=2
i=i + m + 1
m=i + a + b
Fun=m \ 2
End Function
单击命令按钮后,输出结果为

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

答案D

解析 在Sub过程中,程序段先定义了3个Integer型变量k,m,p,并赋给k初值为4,m的初值为1,然后调用事件过程Fun,并将它的值赋给p;在事件过程Fun中定义了两个形参,参数的传送是通过引用实参,即将k,m的地址作为a,b的地址;在Fun中,将m,i定义为静态变量,所以第一次调用后的值仍然保留,但是m,i分别都有赋值语句,将它们的值变为5,2,所以返回值不变,都是6,6。
转载请注明原文地址:https://jikaoti.com/ti/A7g0FFFM
0

最新回复(0)