问题 单项选择题

有如下程序:
Private Sub Command1_Click()
Dim a As Single
Dim b As Single
a=5: b=4
Call Sub1(a,b)
End Sub
Sub Sub1(x As Single,y As Single)
t=X
X=t\y
y=t Mod y
End Sub
在运行上述程序后,a和b的值分别为( )。

A) 0 0
B) 1 1
C) 2 2
D) 1 2

答案

参考答案:D

解析: 调用一个过程时,必须把实际参数传送给过程,完成形式参数与实际参数的结合,然后用实际参数执行调用的过程。因为在默认的情况下,变量都是通过“引用”传送给Sub1过程,这种情况下,可以通过改变过程中相应的参数来改变变量的值。过程Sub1的形参获得a,b的地址,此时x=5,y=4,在过程Sub1中,将x,即5的值赋给t,而将t\y的值赋给x,将f除以y的余数赋给y,此时x,y的值为1,1。

问答题
单项选择题