#include "stdio.h"
main()
{ int iFib[40]={1,1},i;
for(i=2;i<40;i++)
iFib[i]= iFib[i-1]+iFib[i-2];
for(i=O;i<40;i++)
printf("%d ",iFib[i]);
#include "stdio.h"
void main()
{
//定义一个能保存 40 个整数的数组
//同时将 第一个位置(iFib[0]) 和 第一个位置(iFib[1]) 都初始化为 1
//其他没有初始化的位置的数据默认为 0
//定义一个普通变量 i
int iFib[40] = { 1,1 }, i;
//从 第3个位置(iFib[2]) 开始遍历数组
//每一次循环都将 前两个位置上数据的和 赋值给 第3个位置
//比如第一次循环就是将 iFib[0] 和 iFib[1] 相加,也就是 1+1 = 2,将结果 2 赋值给 第3个位置(iFib[2])
//后面依次类推:1 1 2 3 5 8 13 21 ...
for (i = 2; i < 40; i++)
iFib[i] = iFib[i - 1] + iFib[i - 2];
//从头到尾遍历数组,将所有值都输出到控制台上
for (i = 0; i < 40; i++)
printf("%d ", iFib[i]);
}
如果觉得解释得还可以的话,给个采纳吧,有问题可以再私信我
输出前四十项斐波那契数列
i=0,不是O
某一个位置的值,是其前两项的和