问题
单项选择题
下面程序的运行结果是( )。
Private Sub Command1_Click()
a=1.5:b=1.5
Call fun(a,b)
Print a,b
End Sub
Private Subfun(x,y)
x=y*y:y=y+x
End Sub
A.2.25 3.75
B.1.5 2.25
C.1.5 0.75
D.0.75 1.5
答案
参考答案:A
解析: 本题考查参数传递。在VB的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用ByVal声明,说明此参数为传值调用;若用ByRef声明,说明此参数为传址调用;没有说明传递类型,则默认为传址传递。题中的a、b传递给x、y默认为传址调用,在fun中对x、y进行的变化,对于a、b依然有效。