单选题
已知过程对应的代码如下: SubProc() 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
【答案解析】解析:程序执行过程如下: 程序初始化f1=0;f2=1; 当n=1时;For n=1.to 81,执行第一次循环,条件为true;f=f1+f2=0+1=1输出f的值为1;f1=f2=1;f2=f=2; 当n=2时;执行第二次循环,条件为true;f=f1+f2=1+1=2输出f的值为2:f1=f2=1;f2=f=2; 当n=3时;执行第三次循环,条件为true;f=f1+f2=1+2=3输出f的值为3;f1=f2=2;f2=f=3: 当n=4时;执行第四次循环,条件为true;f=f1+f2=2+3=5输出f的值为5;f1=f2=3;f2=f=5: 当n=5时;执行第五次循环,条件为true;f=f1+f2=3+5=8输出f的值为8;f1=f2=5:f2=f=8: 当n=6时;执行第六次循环,条件为true;f=f1+f2=5+8=13输出f的值为13;f1=f2=8;f2=f=13; 当n=7时;执行第七次循环,条件为true;f=f1+f2=8+13=21输出f的值为21;f1=f2=13;f2=f=21: 当n=8时;执行第八次循环,条件为true;f=f1+f2=13+21=34输出f的值为34;f1=f2=21;f2=f=34: 当n=9时;执行第九次循环,条件为false:循环结束。 综上所述,输出结果依次为1,2,3,5,8,13,21,34,该数据列是斐波那契序列中2到9对应的序列值(注:第1项为0,第2项为1),所以选项A正确。