Fibonacci数



3000 ms  |  内存限制: 65535



1



无穷数列1,1,2,3,5,8,13,21,34,55...称为Fibonacci数列,它可以递归地定义为

F(n)=1 ...........(n=1或n=2)


F(n)=F(n-1)+F(n-2).....(n>2)


现要你来求第n个斐波纳奇数。(第1个、第二个都为1)


第一行是一个整数m(m<5)表示共有m组测试数据

每次测试数据只有一行,且只有一个整形数n(n<20)


输出 对每组输入n,输出第n个Fibonacci数 样例输入

3 1 3 5

样例输出

1 2 5

# include<stdio.h>

int main()
{
int m;
int i;
scanf("%d",&m);
for(i=0; i<m; i++)
{
int n;
int f1,f2,f3;
int j;

f1 = 1;
f2 = 1;

scanf("%d",&n);
if(n==1)
f3 = 1;
else if(n==2)
f3 = 1;
else
for(j=3; j<=n; j++)
{
f3 = f1 + f2;
f1 = f2;
f2 = f3;
}
printf("%d\n",f3);
}

return 0;
}