有一个斐波那契数列(Fibonacci sequence),它的第一项为1,第二项为1,以后每一项都等于它的前两项之和。使用一维数组编程实现功能:计算该数列的前20项并赋值给数组,然后每一行5个数据的形式输出。程序运行截图如下图所示:
代码如下:
#include<stdio.h>
#define N 20
int main(void)
{
int i,a[N]={1,1}; //前两位数是固定为1,1
for (i=2; i<N; i++) //以第二个元素开始叠加循环
a[i]=a[i-1]+a[i-2]; //下一个数组元素为前两个数组之和
for (i=0;i<N;i++) //将结果输出
{
if(i%5==0 && i!=0)
printf("\n"); //从一排五列一循环就换行
printf("%-6d",a[i]); //负号代表从左边排,6代表6个空位
}
printf("\n");
}