A-A+
单击命令按钮 下列程序的执行结果是 Private Sub Blck (x As Integ
问题详情
单击命令按钮,下列程序的执行结果是 Private Sub Blck (x As Integer) x = x * 2 + l If x <6 Then Call Blck(x) End If x = x * 2 + 1 Print x; End Sub Private Sub Commandl_Click() Blck 2 End Sub
A.23 47
B.10 36
C.22 44
D.24 50请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:A
解析:考查考生对过程的理解。@解析@此题在函数调用过程中采用了简单递归的方式,具体流程如下:主调过程调用Blck过程,把实参2传递给Blck过程中的形参x,由x=x*2+1语句推出x=5,此时满足Blck过程体中判断语句的判断条件,执行CallBlck(x)语句,第二次调用Blck过程。由x=x*2+1语句得到x值为11,判断条件11<6为假,故返回此调用过程,执行x=x*2+l语句,的x=23并输出,结束此次调用过程。由于两次调用Blck过程,第二次仍返回调用时的断点语句,即执行x=x*2+1,Printx,输出x的值为47,返回到主调过程,两次输出为2347。