问题 单项选择题

假设有如下的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。

选择题
单项选择题