问题
单项选择题
在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Function fun1(n As Integer) As Integer
Dim k As Integer
If n=1 Then
k=1
Else
k=1+fun1(n-1)*2
End If
fun1=k
End Function
Private Sub Command1_Click()
Dim m As Integer,x As Integer
x=4
m=fun1(x)
Print m
End Sub
程序运行后,单击命令按钮,则窗体上显示的内容是______。
A) 4
B) 6
C) 9
D) 15
答案
参考答案:D
解析: fun1是一个递归过程,fun1函数过程共调用了5次,在Command1的单击事件中调用了fun1(4),其他三次调用分别为fun1(3)、fun1(2)、fun1(1),由fun1函数过程自身调用。在fun1的调用过程中,相当于k=1、k=1+1*2=3、k=1+3 *2=7、k=1+2*7=15,正确答案选择D) 。