问题
单项选择题
在窗体上画一个名称为Command1的命令按钮,再画两个名称分别为Label1、Label2的标签,然后编写如下程序代码: Private X As Integer Private Sub Command1_Click( ) X=5:Y=3 Call proc(X,Y) Label1.Caption=X LabeL2.Caption=Y End Sub Private Sub proc(ByVal a As Integer,ByVal b As Integer) X=a*a Y=b+b End Sub 程序运行后,单击命令按钮,则两个标签中显示的内容分别是
A.5和3
B.25和3
C.25和6
D.5和6
答案
参考答案:B
解析: 由于在Proc过程中,a、b的传送方式都是传值,故在“Command1_ Click( )”事件过程中,变量X、Y的地址未发生变化,但由于调用proc过程后,变量x被赋予了新值a*a,所以在单击命令按钮后,Label1显示为25,Label2没有发生变化,因为Y变量事先未声明,为事件过程变量,在未采用传地址方式下Sub过程中的Y与事件过程中的Y互不干扰。