单选题 编写如下程序:
Private Sub Command1_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*2
x=a+b
b=b+100
End Sub
程序运行后,单击命令按钮Command1,并输入数值10和15,则输出结果为______。
  • A.10 115
  • B.20 115
  • C.35 15
  • D.20 15
【正确答案】 D
【答案解析】[解析] 程序中过程f的参数a默认为按址传递,参数b指定按值传递,因此调用f(x,y)时,x的值会受到影响,y的值不会。程序中输入10和15,则x=10,y=15。调用f(x,y),在过程中a=a*2,即a=10*2=20,变量x是过程f中的局部变量,没有用处可不用理会,b=b+100,即b=15+100=115。a的值即按钮单击事件中变量x的值,因此x=20,而y的值仍是原来的值15。因此Print x,y输出20 15。