1. 程式人生 > >Problem B: C/C++經典程式訓練2---斐波那契(Fibonacci)數列

Problem B: C/C++經典程式訓練2---斐波那契(Fibonacci)數列

Problem B: C/C++經典程式訓練2---斐波那契(Fibonacci)數列

Time Limit: 1 Sec  Memory Limit: 4 MB

Description

編寫計算斐波那契(Fibonacci)數列的第n項函式fib(n)(n<40): 數列:f1=f2==1; fn=fn-1+fn-2(n>=3)。

Input

輸入整數n的值;

Output

輸出fib(n)的值

Sample Input

7

Sample Output

13

HINT

參考答案:

#include<stdio.h>
int main()
{
	int f1=1,f2=1;
	int i,k,n;
	scanf("%d",&n);
	if(n%2!=0)
		k=n/2;
	else
		k=(n/2)-1;
	for(i=0;i<k;i++)
	{
		f1=f1+f2;
		f2=f1+f2;
	}
	if(n%2==0)
		printf("%d",f2);
	else
		printf("%d",f1);
	return 0;
}