用递归法编写函数求斐波那契数列的前N项.

如题所述

#include

int
fibonacci(int
n)
{
if(
n
==
1
||
n
==
2)
//
递归结束的条件,求前两项
return
1;
else
return
fibonacci(n-1)+fibonacci(n-2);
//
如果是求其它项,先要求出它前面两项,然后做和。
}
int
main()
{
int
n;
printf("please
input
n:
");
scanf("%d",&n);
printf("result:
%d\n",fibonacci(n));
return
0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-07-29
程序:
#include<iostream.h>
int
fibonacci(int
n){
if(n==0)
return
0;
if(n==1)
return
1;
else
return
fib(n-1)+fib(n-2);
}
void
main(){
cout<<fib(5)<<endl;//当n=5时
}
第2个回答  2019-05-28
#include
<stdio.h>
#include
<stdlib.h>
int
f(int
n)
{
if(n==1||n==2)
return
1;
else
return
f(n-1)+f(n-2);
}
int
main()
{
int
n,i;
printf("Input
n:");
scanf("%d",&n);
for(i=1;i<=n;i++)
printf("%d
",f(i));
system("pause");
}
第3个回答  2019-05-22
int
f(int
n)
{
if(n==1||n==2)
return
1;
else
return
f(n-1)+f(n-2)
}