问题 单项选择题

在窗体上画一个名称为Command1的命令按钮,再画两个名称分别为Label1、Label2的标签,然后编写如下程序代码:
Private X As Integer
Private Sub Command1_Click()
X=5:Y=3
Call proc(x,y)
Label1.Caption=x
Labet2.Caption=y
End Sub Private Sub proc(a As Integer,ByVal b As Integer)
X=a*a
Y=b+b
End Sub
程序运行后,单击命令按钮,则两个标签中显示的内容分别是( )

A.25和3
B.5和3
C.25和6
D.5和6

答案

参考答案:A

解析: 在过程(包括事件过程和通用过程)内定义的变量叫做局部变量,其作用域是它所在的过程a在不同的过程中可以定义相同名字的变量,它们之间没有任何关系。默认情况下每次调用过程时,局部变量被初始化为0或空字符串,但声明为“Static”型的局部变量,在每次调用过程时,其值保持不变。
模块变量包括窗体变量和标准模块变量,在默认情况下,模块级变量对该模块中的所有过程都是可见的,但对其他模块中的代码不可见,窗体变量可用于该窗体内的所有过程。
本题中,x是窗体变量,调用过程proc后其值为5*5=25。Y为过程变量,调用过程proc不影响其值,仍为3。

单项选择题
单项选择题