问题 单项选择题

单击命令按钮时,下列程序的执行结果为
Private Sub Command1_click()
Dim X As Integer,Y As Integer
  x=12:y=32
  Call PCS(x,y)
  Print x;y
End Sub
Public Sub PCS(ByVal n As Integer,ByVal m As Integer)
  n=n Mod 10
  m=m Mod 10
End Sub

A.12 32

B.2 32

C.2 3

D.12 3

答案

参考答案:A

解析:[命题目的] 考查考生对参数传递的掌握情况。
[解题要点] 在调用过程时,一般主调与被调过程之间有数据传递,即将主调过程的实参传递给被调用的过程,完成实参与形参的结合,然后执行被调过程。在Visual Basic中,实参与形参的结合有两种方式,即传址与传值。这两种方法的特点如下:
传址的结合过程是:当调用一个过程时,它将实参的地址传给形参,在被调用的过程中,对形参的任何操作都变成了对相应实参的操作,因此实参的值会随形参的改变而改变。
传值的结合过程是:当调用一个过程时,系统将实参的值复制给形参并断开了联系,被调用过程中的操作是在形参自己的存储单元中进行的,当过程调用结束时,这些形参所占用的存储单元也同时被释放,因此在过程中对形参的任何操作都不会影响实参。而题中被调过程PCS中有两个形参,两者均为传值方式。主调过程分别把实参x、y传递给PCS,所以当过程调用结束后,实参x、y的值都没有改变,最后输出的值应为:12,32。
[错解分析] 参数的传值方式和传址方式的区别。
[考点链接] 函数调用和参数传递。

多项选择题
判断题