问题
单项选择题
假设有如下的Sub过程:
Sub sfun(x As Single,y As Single)
t=x
x=t/y
y=t Mod y
End Sub
在窗体上添加一个命令按钮Command1,编写如下代码:
Private Sub Command1_Click()
Dim a As single
Dim b As single
a=5
b=4
sfun a’b
MsgBox a & chr(10)+chr(13) & b
End Sub
程序运行后,单击命令按钮,则在弹出的信息框的标题栏中显示的是______。
A.1和1
B.1.25和1
C.1.25和4
D.5和4
答案
参考答案:B
解析: 在VBA中,参数的传递方式有传址传递和传值传递两种。如果在过程声明时没有说明传递类型,则默认为传址传递,即把形参的结果传递给实参。本题是传址传递过程。调用时x=a,y=b,在过程内x的值为5/4=1.25,y的值为5 Mod 4余1。调用结束后,把x和y的值分别传给a和b。