问题 单项选择题

有如下的程序:
Private Sub Command1_Click( )
 Dim k As Integer,m As Integer
 Dim P As Integer
 k=4:m=1
 P=Pid(k,m) :Print P;
 P=Pid(k,m) :Print P
End Sub
Private Function Pid(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
 Pid=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,然后调用事件过程Pid,并将它的值赋给p;在事件过程Pid中定义了两个形参,参数的传送是通过引用实参,即将k,m的地址作为a,b的地址;在Pid中,将m,I定义为静态变量,所以第一次调用后的值仍然保留,但是m,I分别都有赋值语句,将它们的值变为5,2,所以返回值不变都是6 6。

单项选择题
问答题