问题
单项选择题
在窗体上有一个命令按钮Command1,编写事件代码如下:
Private Sub Command1_Click()
Dim x As Integer,y As Integer
x=12:y=32
Call Proc(x,y)
Debug.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.2 32
B.12 3
C.2 2
D.12 32
答案
参考答案:A
解析: 参数有两种传递方式:传址传递ByRd和传值传递ByVal。如果没有说明传递类型,则默认为传址传递。在函数Proc(n As Integer,ByVal m As Integer)参数中,形参n默认为传址传递,形参的变化将会返回到实参,即形参nmod10(12mod10)得到的结果2将返回给实参x,即x=2;而y为传值类型,不因形参的变化而变化,所以输出的x和y应为2和32。