写一个函数,fact(int n)求Fibonacci数列的第n个值。Fibonacci数列满足f(0)=1, f(1)=1,f(n)=f(n-1)+f(n-2) (当n>=2)
延伸:求斐波那契数列的前n项和
int fact(int n)
{
if(n==1||n==2)
{
return 1;
}
else
{
return fact(n-2)+fact(n-1);
}
}
#include<stdio.h>
int main(void)
{
int a;
int b;
int sum=0;
int i=1;
printf("求斐波那题数列的第几项:\n");
scanf("%d",&a);
b=fact(a);
for(i=1;i<=a;i++)
{
sum=sum+fact(i);
}
printf("第n项是%d\n",b);
printf("前n项和是%d\n",sum);
return 0;
}