设有如下程序: Private Sub sV(ByVal m As Integer,n As Integer) m=m*2:n=n-5:Print m;n End Sub Private Sub Form Clic

admin2013-10-16  18

问题 设有如下程序:
    Private Sub sV(ByVal m As Integer,n As Integer)
         m=m*2:n=n-5:Print m;n
    End Sub
    Private Sub Form Click()
         Dim x As Integer,y As Integer
         x=10:y=1 5:sV x.Y
         Print x;Y
    End Sub
    运行程序,单击窗体,输出结果为

选项 A、20 1 0 10 1 0   
B、10 1 5 20 10   
C、20 1 5 1 0 1 5   
D、20 1 0 20 10

答案A

解析 在Visual Basic中调用过程时,参数有两种传递形式:按值传递(Byval)和按址传递(Byref),默认为按址传递。其中,当参数按址传递时,如果在引用该参数的过程中改变了形参的值,同时也就改变了传递参数时实参变量的值。本题中sV的参数m是按值传递的,n是按地址传递的,因此在sV中对m的改变不会影响实参x,对n的操作会影响实参y。
转载请注明原文地址:https://jikaoti.com/ti/Iy60FFFM
0

随机试题
最新回复(0)