标准模块中有如下程序代码: Public x As Integer,Y As Integer Sub TempSub() x=10:y=20 End Sub 在窗体上有1个命令按钮,并有如下事件过程:

admin2012-09-07  23

问题 标准模块中有如下程序代码:
    Public x As Integer,Y As Integer
    Sub TempSub()
        x=10:y=20
    End Sub
    在窗体上有1个命令按钮,并有如下事件过程:
    Private Sub Commandl_Click()
        Dim x As Integer
        Call TempSub
        x=x+100:y=y+100
        Print x;Y
    End Sub
    运行程序后单击命令按钮,窗体上显示的是(    )。

选项 A、110  100
B、100  100
C、100  120
D、1 10  120

答案C

解析 在标准模块用Public关键字声明的全局变量,其作用域最大,可以在工程的每个模块、每个过程中使用。但当不同作用范围的变量重名时,有效范围小的变量会屏蔽有效范围大的变量。当一个全局变量与一个过程级变量重名时,当在本过程中直接使用这个变量名时,被认为是指局部变量。如果要在这个过程中使用同名的全局变量,要使用模块名来修饰变量名。
    在本题的事件过程中,由于变最x被声明为过程级变量,其初始值为0,调用过程TempSub不会改变其值,而变量y为标准模块中声明的全局变量,调用过程TempSub后其值为20。故最后输出结果为100和120。
转载请注明原文地址:https://kaotiyun.com/show/Dxhp777K
0

最新回复(0)