请问用while语句的循环结构输出不大于800的
斐波那契序列,输出的数与数之间用空格隔开怎么输入
def fib_recur(n):
assert n >= 0, "n > 0"
if n <= 1:
return n
v = fib_recur(n-1) + fib_recur(n-2)
return v
n = 1
result = []
while True:
v = fib_recur(n)
if v<800:
result.append(str(v))
else:
break
n+=1
print(' '.join(result))
斐波那契数列指的是这样一个数列:1,1,2,3,5,8,13,21,34,55,89...
这个数列从第3项开始,每一项都等于前两项之和。
#include<stdio.h>
int main()
{
int n = 0;
int a = 1;
int b = 1;
int c = 1;
scanf("%d", &n);
while (n > 2)
{
c = a + b;
a = b;
b = c;
n--;//减到不需要循环为止
}
printf("%d", c);
}