您的位置:首页 > 其它

13 Fibonacci数

2014-12-22 14:40 148 查看
描述无穷数列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 n,i,m,a[21],b[21];
	scanf("%d",&m);
	getchar();
	while(m--){
		scanf("%d",&n);
		getchar();
		a[1]=1;
		a[2]=1;
		if(n<=2){
			printf("%d\n",a
);
		}
		else{
			for(i=3;i<=n;i++){
				a[i]=a[i-1]+a[i-2];
			}
			printf("%d\n",a
);
		} 
	}
	return 0;
}

优秀代码

#include<stdio.h>
int
 main(){
int
m,n,i,s1,s2;
scanf
(
"%d"
,&m);
while
(m--){
scanf
(
"%d"
,&n);
for
(i=3,s1=s2=1;i<=n;i++){
s1=s1+s2;s2=s1-s2;
}
printf
(
"%d\n"
,s1);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: