41:求斐波拉切数列

41 求斐波拉切数列

作者: 孙辞海 时间限制: 1S章节: 一维数组

问题描述 :

斐波拉切数列a1, a2, ..., an的定义如下: a1 = 1; a2 = 1; an = an-1 + an-2; (n > 2) 求出第n项an的值。

输入说明 :

你的程序需要从标准输入设备(通常为键盘)中读入多组测试数据。每组输入数据由一行组成,其中只有一个正整数n(0 < n ≤ 20)。两组输入数据间无空行。

输出说明 :

对每组测试数据,你的程序需要向标准输出设备(通常为启动该程序的文本终端)输出一行,其中只有一个整数,也就是an的值(我们保证它小于231),所有数据前后没有多余的空格或空行,两组数据之间也没有多余的空行。

输入范例 :
1
2
3
20
输出范例 :
1
1
2
6765

代码:

#include <stdio.h>
int fun(int n)
{
	if (n == 1 || n == 2)
	{
		return 1;
	}
	else
	{
		return fun(n - 1) + fun(n - 2);
	}
}
int main()
{
	int n, sum;
	while (scanf("%d", &n) != EOF)
	{
		sum = fun(n);
		printf("%d
", sum);
		sum = 0;
	}
	return 0;
}
Yesterday is history,tomorrow ismystery,but today is a gift!That why it is called Present!
原文地址:https://www.cnblogs.com/VictorierJwr/p/12487504.html