填空题 已知数列的递推公式如下: f(n)=1 当n=0,1时 f(n)=f(n-1)+f(n-2) 当n>1时 则按照递推公式可以得到数列:1,1,2,3,5,8,13,21,34,55,……。现要求 从键盘输入n值,输出对应项的值。例如当输入n为8时,应该输出34。程序如下, 请补充完整。 Private Sub runll_Click() f0=1 f1=1 num=Val(InputBox("请输入一个大于2的整数:")) For n=2 To{{U}} 【12】 {{/U}} f2={{U}} 【13】 {{/U}} f0=f1 f1=f2 Next n MsgBox f2 End Sub
  • 1、
【正确答案】 1、[12] num    
【答案解析】[13]f0+f1 [知识点] 模块/VBA程序的调试/递推公式程序设计 [评析] 程序首先需要接受用户输入的值,根据程序代码可以判断,使用变量num来存放用户输入的值,使用循环实现递推,根据题面“要求从键盘输入n值,输出对应项的值”,可知循环从2开始,到用户输入的值结束,也就是“Forn=2 To num”。 根据题面给出的公式“当n>1时,f(n)=f(n-1)+f(n-2)”,可知第n项的值总等于它前两项(即第n-2项与第n-1项)之和,在程序For循环中,总用f2表示第n项,f0表示第n-2项,f1表示第n-1项,所以f2=f0+f1。