summer_shell 2016-12-06 07:51 采纳率: 0%
浏览 803

关于斐波那数列的在不同编译器的问题

为什么我用vs和VC6.0运行这段代码都是错误的呢。在手机的c4droid上运行结果是正确的,请问大神这个差别在哪
#include
int Fibonacci(int k, int m)
{
int i, j,sum;
if (k < 0 || m < 0)
return 0;
int f[1000];
if (m < k - 1) return 0;
else if (m == k - 1) return 1;
else
{
for (i = 0; i < k - 1; i++) f[i] = 0;
f[k - 1] = 1;
for (i = k; i <= m;i++)
{
sum = 0;
for (j = i-k; j <= i; j++)
sum += f[j];
f[i] = sum;
}
}
return f[m];

}
void main()
{
int a, b,c;
printf("请输入k和m的值:\n");
scanf("%d %d",&a,&b);
printf("斐波那契数列的m项值为:\n");
printf("%d", Fibonacci(a, b));
}

  • 写回答

2条回答 默认 最新

  • shen_wei 2016-12-06 08:52
    关注
     long int fibo(long int a) 
    { 
        if(a <= 2) 
        {
            return 1; 
        }
        else 
        {
            return fibo(a - 1) + fibo(a - 2);
        }
    } 
    
    评论

报告相同问题?