问题 单项选择题

当Form1_Click事件发生时,写出在窗体上显示的第二行和第三行是( )。 Private a As Integer,c As Integer Private Sub Form_Click()Dim a As Integer,b As Integera=10:b=10:c=10Print a,b,cCall test1(a,b)Print a,b,c End Sub Private Sub test1(m As Integer,ByVal n As Integer)Dim c As Integerm=5:n=5:c=5Print m,n,c End Sub

A.5 5 55 10 10

B.5 5 55 5 10

C.5 5 105 10 10

D.5 5 510 10 10

答案

参考答案:A

解析: 本题定义了两个模块级变量a和c,此两个变量在该模块的过程中都可以使用。当发生了窗体的单击事件时,将执行Form_Click事件过程,在该过程中定义了两个变量a和b,在该过程中使用的变量a不是模块级变量a,而是局部变量a,c是模块级变量,该事件过程中第一次输出的结果是:10 10 10。调用test1过程,变量a按地址传递给形参m,变量b按值传递给形参n,开始执行test1过程。在过程中定义了一个变量c,所以在该过程中使用的c不是模块级变量c,而是局部变量c,给m赋值为5,由于是按地址传递,所以相应的实参a也变成了5,给n赋值5并没有改变对应实参的值,给c赋值5,所以test1过程中的输出为:5 5 5。调用返回后,输出的a、b和c的值分别是5 10 10。

选择题
单项选择题 B1型题