问题
单项选择题
设有如下通用过程:
Public Sub Fun(a()As Integer,x As Integer)
For i=1 To 5
x=x+a(i)
Next
End Sub
在窗体上画一个名称为Text1的文本框和一个名称为Commandl的命令按钮。然后编写如下的事件过程:
Private Sub Commandl_Click()
Dim arr(5)As Integer,n As Integer
For i=1 To 5
arr(i)=i+i
Next
Fun arr,n
Text1.Text=Str(n)
End Sub
程序运行后,单击命令按钮,则在文本框中显示的内容是()。
A.30
B.25
C.20
D.15
答案
参考答案:A
解析:
[评析] 参数的传送分为两种:一种是按值传送(ByVal),一种是按地址传送(ByRef),而ByRef是默认的传送方式。按值传送时,不影响实参的值,而按地址传送则影响实参的值。本题中的参数都是按默认方式来传送的,即按地址传送,所以调用过程Fun后n的值被改变。而在Commandl的Click事件中,数组被赋值为 2、4、6、8、10,故n=2+4+6+8+10=30。