一、题目
已知当i=0时f(0)=1,当i=1时,发f(1)=1;当i>=2时,f(i)=f(i-1)+f(i-2)尝试生成斐波拉契数列的前20项并输出。
二、题目分析
已知数列的第一和第二项的值,第三项的值刚好是第一第二项的和,f(0),f(1)里面的0,1刚好对应数组下标的值,因此我们把这两个值传入数组作为基础数据,计算第三项,就可以直接在数组中取下标就可以了。
int arry[20]; //输出前20项,那么数组长度即为20;
arry[0] = 1;
arry[1] = 1;
三,完整代码
#include <stdio.h>
int main()
{
int arry[20];
arry[0] = 1; arry[1] = 1;
for (int i = 2; i < 20; i++)
arry[i] = arry[i - 1]+arry[i - 2];
for (int i = 0; i < 20; i++)
printf("%d ", arry[i]);
}
四,运行截图