在窗体上有一个命令按钮Commandl,编写事件代码如下: Private Sub Command1_Click()   Dim x As Integer, y As Integer   x = 12: y = 32   Call Proc(x, y)  

admin2021-09-06  24

问题 在窗体上有一个命令按钮Commandl,编写事件代码如下:
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

解析 参数有两种传递方式:传址传递ByRef和传值传递ByVal。如果没有说明传递类型,则默认为传址传递。在函数Proc(n As Integer,ByVal m As Integer)参数中,形参n默认为传址传递,形参的变化将会返回到实参,即形参n mod 10(12 mod 10)得到的结果2将返回给实参x,即x=2;而y为传值类型,不因形参的变化而变化,所以输出的x和y应为2和32。
转载请注明原文地址:https://kaotiyun.com/show/qXvp777K
0

最新回复(0)