</pre><pre name="code" class="cpp">//用数组处理Fibonacci数列问题
#include<stdio.h>
int main()
{
int i=0;
int f[20]={1,1}; //对f[0]和f[1]赋初值1
for(i=2;i<=19;i++)
{
f[i]=f[i-2]+f[i-1]; //先后求出f[2]~f[19]的值
}
for(i=0;i<20;i++)
{
if(i%5==0) //控制每输出5个数后换行
{
printf("\n");
}
printf("%12d",f[i]);
}
printf("\n");
return 0;
}
</pre><pre name="code" class="cpp">
//递归实现
#include<stdio.h>
int fib(int n)
{
if(n<=2)
{
return 1;
}
else
{
return fib(n-1)+fib(n-2);
}
}
int main()
{
int n;
scanf("%d",&n);
int ret=fib(n);
printf("%d\n",ret);
return 0;
}