1159:斐波那契数列
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 24501 通过数: 16990
【题目描述】
用递归函数输出斐波那契数列第n项。0,1,1,2,3,5,8,13……
【输入】
一个正整数n,表示第n项。
【输出】
第n项是多少。
【输入样例】
3
【输出样例】
1
【分析】
Fibonacci数列的递推规律为 当前项=前两项之和。设 fib(x) 为求Fibonacci数列的函数,递归式为:fib(x) = fib(x-1) + fib(x-2),递归出口为:x=1时,f(x)=0,x=2时,f(x)=1。
【参考代码】
#include <stdio.h> long long fib(int n) { if(n==1) return 0; if(n==2) return 1; return fib(n-1)+fib(n-2); } int main() { int n; scanf("%d",&n); printf("%lld\n",fib(n)); return 0; }
#include <stdio.h> long long fib(int n) { if(n==1) return 0; if(n==2) return 1; return fib(n-1)+fib(n-2); } int main() { int n; scanf("%d",&n); printf("%lld\n",fib(n)); return 0; }
http://ybt.ssoier.cn:8088/problem_show.php?pid=1159