问题 单项选择题

标准模块中有如下程序代码:
Public x As Integer, y As Integer
Sub var_pub()
x=10:y=20
End Sub
在窗体上有一个命令按钮,并有如下事件过程:
Private Sub Command1_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

解析: 本题主要考查变量的作用域。标准模块中定义了两个公共变量x和y,则自定义过程var_pub和事件过程Command1_Click都可以使用x和y。但在Command1_Click内部,用Dim语句又定义了一个局部变量x,这样在Command1_Click事件过程中公共变量x和局部变量x同名且作用范围重合。根据VB的语法规则,Command1_Click事件过程使用作用范围较小的局部变量x。运行程序后单击命令按钮,在Command1_Click事件过程中调用var_pub过程时使得公共变量x值为10,y值为20。var_pub过程结束后在Command1_Click过程中,用的是局部变量x,默认初始值为0,x=0+100;y是公共变量,y=20+100,所以输出结果为100和120,答案为B。

选择题
写句子