编写如下程序: Private Sub Commandl_Click() Dim x As Integer, y As Integer x=InputBox("输入第一个数"):y=InputBox("输入第二个数") Call f(x,y)

admin2017-06-21  25

问题 编写如下程序:
Private Sub Commandl_Click()
Dim x As Integer, y As Integer
  x=InputBox("输入第一个数"):y=InputBox("输入第二个数")
  Call f(x,y)
   Print x,y
  End Sub
  Sub f(a As Integer,ByVal b As Integer)
    a=a*:x=a+b:b=b+100
End Sub
程序运行后,单击命令按钮Commandl,并输入数值10和15,则输出结果为

选项 A、10  1  15
B、20  11  5
C、35  15
D、20  15

答案D

解析 在Visual Basic中调用过程时,参数有两种传递形式:按值传递(ByVal)和按址传递(Byref),默认为按址传递。其中,当参数按址传递时,如果在引用该参数的过程中改变了形参的值,同时也就改变了传递参数时实参变量的值。本题中f的参数a是按地址传递的,b是按值传递的,因此在f中对a的改变会影响实参x,对b的操作不会影响实参y。
转载请注明原文地址:https://kaotiyun.com/show/LTGp777K
0

最新回复(0)