#include<stdio.h>
int a[47];
int fib(int month)
{
int i;
a[1]=1,a[2]=1;
for(i=3;i<=46;i++)
a[i]=a[i-1]+a[i-2];
return a[month];
}
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
printf("%d\n",fib(n));
return 0;
}
//定义一个全局变量
程序执行一次后,就得到a[3]到a[46]的值;
输出时,只需输出想要得到的数即可,节约运行时间。