设有如下程序代码: Private Sub Command1_Click() Dim x As Integer x = 30 Print f(x) + f(x) End Sub Private Function f(a As Int

admin2020-07-22  17

问题 设有如下程序代码:
Private Sub Command1_Click()
    Dim x As Integer
    x = 30
    Print f(x) + f(x)
End Sub
Private Function f(a As Integer) As Integer
    a = a / 3
    f = a
End Function
运行Command1_Click过程所产生的输出是

选项 A、13
B、20
C、30
D、6

答案A

解析 VB默认的参数传递方式是按地址传递。第1次调用函数f(x)时x=30,故f(30)=10,此时a的值为10,x的值为10,函数调用结束时,a被释放,第2次调用函数f(x)时,x=10,故f(10)=3,所以f(x)+f(x)=f(30)+f(10)=13。故正确答案为选项A。
转载请注明原文地址:https://jikaoti.com/ti/iDS0FFFM
0

最新回复(0)