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

admin2020-01-02  33

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

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

答案B

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

最新回复(0)