当Form1_Click事件发生时,写出在窗体上显示的第二行和第三行是( )。 Private a As Integer,c As Integer Private Sub Form_Click() Dim a As Inte

admin2009-02-13  24

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

选项 A、5   5   5       5   10  10
B、5   5   5       5   5   10
C、5   5   10       5   10  10
D、5   5   5       10  10  10

答案1

解析 本题定义了两个模块级变量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。
转载请注明原文地址:https://kaotiyun.com/show/G72p777K
0

最新回复(0)