单选题
设有以下程序代码:Private Sub Command1_Click() Dim x As String, y As Integer x = "考试" y = 1 proc x, y Print "第"; y; "次"; xEnd SubSub proc(ByVal a As String, b As Integer) a = "参加" + a b = b + 1End Sub运行程序,单击命令按钮后显示的是
A、
第1次考试
B、
第2次考试
C、
第1次参加考试
D、
第2次参加考试
【正确答案】
B
【答案解析】
解析:proc过程中a前有ByVal,是按值传递,即x将值传给形参a;b是按地址传递,y把地址传给了形参b,a的变化不引起x的变化,但b的变化改变了y。在过程proc中a为 "参加考试 ",b=1+1=2,调用完过程后,y=b=2,x仍为 "考试 ",故输出结果 "第2次考试 ",故选择B。
提交答案
关闭