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

admin2018-12-20  23

问题 有一个数列,第一个数和第二个数分别为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/pAFp777K
0

最新回复(0)