单项选择题
Fibonacci数列的规律是:前2个数为1,从第3个数开始,每个数是它前2个数之和,即:1,1,2, 3, 5, 8,13, 21,34, 55, 89,…。某人编写了下面的函数,判断大于1的整数x是否是Fibonacci数列中的某个数,若是,则返回True,否则返回False。
Function Isfab(x As Integer)As Boolean
Dim a As Integer, b As Integer, c As Integer, flag As Boolean
flag=False
a=1:b=I
Do While x<b
c=a+b
a=b
b=c
If x=b Then flag=True
Loop
Isfab=flag
End Function
测试时发现对于所有正整数x,函数都返回False,程序需要修改。下面的修改方案中正确的是()
A.把a= b与b=c的位置互换
B.把c=a+b移到b=c之后
C.把Do While x<b改为Do While x>b
D.把if x=b Then flag=True改为If x=a Then flag=True