例5.2 用数组来处理求Fibonacci数列问题。
可以用20个元素代表数列中的20个数,从第3个数开始,可以直接用表达式f[i]=f[i-2]+f[i-1]求出各数。
程序如下:
#include <iostream>
#include <iomanip>
using namespace std;
int main( )
{ int i;
int f[20]={1,1}; //f[0]=1,f[1]=1
for(i=2;i<20;i++)
f[i]=f[i-2]+f[i-1]; //在i的值为2时,f[2]=f[0]+f[1],依此类推
for(i=0;i<20;i++) //此循环的作用是输出20个数
{if(i%5==0) cout<<endl; //控制换行,每行输出5个数据
cout<<setw(8)<<f[i]; //每个数据输出时占8列宽度
}
cout<<endl; //最后执行一次换行
return 0;
}
运行结果如下:
(空一行)
1 1 2 3 5
8 13 21 34 55
89 144 233 377 610
987 1597 2584 4181 6765
评论