[单项选择题] 以下程序运行后,单击命令按钮,窗体显示的结果是 ______。
Private Function p1(x As Integer,y As Integel,z As Integer)
p1=2*x+y+3*z
End Function
Private Function p2(x As Integer,y As Integer,z As Integer)
p2=p1(2,y,x)+x
End Function
Private SubCommandl_Click()
Dim a As Integer
Dim b As Integer
Dim c As Integer
a=2:b=3:c=4
Print p2(c,b,
A.
End SubA) 19
B.21
C.22
D.23
正确答案:D
参考解析:当程序执行到Print p2(c,b,a)语句时,首先调用函数过程p2,将实参c、b、a,的值4、3、2按顺序传递给p2的形参x、y、z,使形参x、y、z的值分别是4、3、2。当执行到函数过程p2中的语句p2=p1(z,y,x)+x时,又去调用函数过程p1,并将实参x、y、x的值2、3、4按顺序传递给形参x、y、z,使函数过程p1的形参x、y、z的值分别是2、3、4。于是执行p1中的语句p1=2*x+y+3*x=2*2+3+3*4=4+3+12=19。即函数过程p2中p1(2,y,x)的值为19,因此p2=p1(2,y,x)+x=19+4=23。该值返回给Command1_Click事件过程中的p2(c,b,a),所以窗体显示的值是23。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)