已知过程对应的代码如下: Sub Proc() n = 1 f1 = 0 f2 = 1 Do While n

admin2015-07-01  27

问题 已知过程对应的代码如下:
Sub Proc()
  n = 1
  f1 = 0
  f2 = 1
  Do While n <= 8
    f = f1 + f2
    Debug.Print f
    f1 = f2
    f2 = f
    n = n + 1
  Loop
End Sub
过程Proc在立即窗口中显示的结果是

选项 A、斐波那契序列中2到9对应的序列值
B、斐波那契序列中2到8对应的序列值
C、整数1到n(n<9) 对应的累加和
D、整数1到n(n<8) 对应的累加和

答案A

解析 首先,我们可以看出while循环执行8次(n<=8);然后按照程序的语句,写出部分执行结果:第一次循环n=1时,输出f=1;第二次循环n=2,输出f=2;第三次循环n=3,输出f=3;...;我们发现输出的是一个斐波那契数列(0、1、1、2、3、…,即Fn=F(n-1)+F(n-2)(n>=2,n∈N*)),由斐波那契数列的定义可知,该程序缺少了第0、1两项,从第2项开始输出。因此,本题应选择A选项。
转载请注明原文地址:https://kaotiyun.com/show/U9gp777K
0

最新回复(0)