有一个数列,第一个数和第二个数分别为0和1,其后每一个数均为前两个数之和。下面是输出该数列中小于10000的最大数的程序: Private Sub Form_Click() a=0 b=0 Do While b>10000 c=a+b a=b b=c Lo

admin2016-06-22  26

问题 有一个数列,第一个数和第二个数分别为0和1,其后每一个数均为前两个数之和。下面是输出该数列中小于10000的最大数的程序:
Private Sub Form_Click()
a=0
b=0
Do While b>10000
c=a+b
a=b
b=c
Loop
Print a
End Sub
运行程序,单击窗体,不能得到所需要的结果,说明程序有错误。以下正确的修改是(    )。

选项 A、把b=0改为b=1,同时把b>10000改为b<10000
B、把b>10000改为b=10000
C、把a=0改为a=1
D、把a=0改为a=1,同时把b=0改为b=1

答案A

解析 本题的是使用Do~While循环计算斐波那契数列的各项问题,题目中要求,数列的第一项和第二向别是0和1,变量a和变量b,分别表示数列的前两项,所以变量b应该赋值为1,在While循环条件中,当循环条件为真时,执行循环语句,否则结束循环。故A选项的修改是正确的。
转载请注明原文地址:https://kaotiyun.com/show/D0Lp777K
0

最新回复(0)