问题
单项选择题
单击命令按钮执行以下程序,则输出结果为( )。
Private Sub Command1_Click()
Dim x As Integer,y As Integer
X=14:y=48
Call Proc(x,y)
Print x;y
End Sub
Public Sub Proc(n As Integer,ByVal m As Integer)
n=n Mod 10:m=m Mod 10
End Sub
A.4 8
B.14 8
C.14 48
D.4 48
答案
参考答案:D
解析: 本题考查参数传递。在VB的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用ByVal声明,说明此参数为传值调用;若用ByRef声明,说明此参数为传址调用;如果没有说明传递类型,则默认为传址传递。由此可知题目中的实参x为传址调用,y为传值调用,因此n的变化影响x,而m变化不会影响y。