[单项选择题] 单击命令按钮时,下列程序的执行结果是
Private Sub Command1_Click()
Dima 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+2
End Function
Function SecProc(x As Integer,y As Integer,z As Integer)
SecProc=FirProc(z,x,y) +x+7
End Function
A) 20 B) 25 C) 37 D) 32
A. 20
B. 25
C. 37
D. 32
正确答案:C
参考解析:此题程序代码中用了嵌套调用,我们对这样的问题要多加小心,千万不要把实参和相对应的形参弄混。主调过程Commandl_Click输出的是SecProc(c,b,a) 的返回值,调用过程SecProc时,主调过程分别把实参c、b、a地址传给形参x、y、z,此时在过程SecProc中,SecProc=FirProc(a,c,b)+7。由此看出,程序段执行此语句时,将调用过程FirProc。把实参a,c,b的地址分别传给形参x、y、2,此时在过程FirProc中,FirProc=2*x+y+3*z+2,所以FirProc(a,c,b)=6+4+15 +2=27,SecProc(a,c,b) =27+3+7=37。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)