问题
单项选择题
设有如下通用过程:
Public Sub Fun(a(), ByVal x As Integer)
For i=1 To 5
x = x + a(i)
Next
End Sub
在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下的事件过程:
Private Sub Commandl Click()
Dim arr(5) As Variant
For i=1 To 5
arr(i) =i
Next
n = 10
Call Fun(arr(), n)
Text1.Text=n
End Sub
程序运行后,单击命令按钮,则在文本框中显示的内容是
A.10
B.15
C.25
D.24
答案
参考答案:A
解析: 本题主要考查传值与传地址的区别。Fun过程中参数a()的传送方式为传地址,参数x的传送方式为传值。当在Command1的Click事件过程调用该过程时,变量仅仅复制了一个变量副本传送给Fun过程,而它自己本身并没有发生变化.所以当调用完毕Fun过程后,再将n值赋给Textl的Text属性时,文本框中显示的内容仍为10。正确答案为A。