单击命令按钮时,下列程序的执行结果是 Private Sub Commandl_Click() Dim a As Integer,b As Integer,c As Integer a=3:b=4:c=5 Print SecProc(c,b,A)End S

admin2010-11-20  19

问题 单击命令按钮时,下列程序的执行结果是
Private Sub Commandl_Click()
Dim a As Integer,b As Integer,c As Integer
a=3:b=4:c=5
Print SecProc(c,b,A)End Sub
Function FirProc(x As Integer,y As Integer,z As Integer)
FirProc=2*x+y+3*z
End Function
Function SecProc(x As Integer,y As Integer,z As Integer)
SecProc=FirProc(z,x,y) +x
End Function

选项 A、20
B、22
C、28
D、30

答案C

解析 此题程序代码中用了双层调用,我们对这样的问题要多加小心,千万不要把实参和相对应的形参弄混。主调过程Command1_Click输出的是SecProc(c,b,A)的返回值,调用过程SecProc时,主调过程分别把实参c、b、a地址传给形参x、y、z,此时在过程SecProc中,SecProc=FirProc(a,c,B)+c。由此看出,程序段执行此语句时,将调用过程FirProc。把实参a、c、b的地址分别传给形参x、y、z,此时在过程FirProc中,FirProc=2*x+y+3*z,所以FirProc(a,c,B)=6+4+ 15=25,SecProc(a,c,B)=25+3=28,所以选项C)是正确的。
转载请注明原文地址:https://kaotiyun.com/show/Odmp777K
0

最新回复(0)