57 斐波那契部分和
作者: 江宝钏时间限制: 1S章节: 函数
问题描述 :
计算闭区间m,n内的所有斐波那契数的和。
要求定义并调用函数fib(n),它的功能是返回第n项Fibonacci数。
例如,fib(7)返回13
Fibonacci={1,1,2,3,5,8,13,…}
其中:an=an-1+an-2
输入说明 :
两个数m和n
输出说明 :
所有属于闭区间[m,n]即大于等于m,小于等于n的斐波那契数的和。
输入范例 :
2 5
输出范例 :
10
#include <stdio.h>
int fib(int x)
{
int arr[1000],i;
arr[0]=arr[1]=1;
for(i=2;i<x;i++)
{
arr[i]=arr[i-1]+arr[i-2];
}
return arr[x-1];
}
int main()
{
int fib(int x);
int m,n,i,sum=0;
int min,max,j;
scanf("%d%d",&m,&n);
if(m>=n)
{
max=m;
min=n;
}
if(m<n)
{
max=n;
min=m;
}
for(i=min;i<=max;i++)
{
for(j=1;j<=1000;j++)
{
if(i==fib(j))
sum+=i;
}
}
printf("%d\n",sum);
return 0;
}