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

admin2020-04-18  21

问题 标准模块中有如下程序代码:
Public x As Integer,Y As Integer
Sub var_pub()
   x=10:y=20
End Sub
在窗体上有1个命令按钮,并有如下事件过程:
Private Sub Commandl_Click()  
   Dim x As 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为标准模块中声明的全局变量,调用过程vat_pub后其值为20。故最后输出结果为100和120。
转载请注明原文地址:https://jikaoti.com/ti/iox0FFFM
0

最新回复(0)