A-A+

有如下的程序: Private Sub Command1_Click() Dim k As

2022-08-06 00:30:14 问答库 阅读 173 次

问题详情

有如下的程序: 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 in=5:i=2 i=i+m+1 m=i+a+b Fun=m2 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。

考点:程序