据我所知,这看起来应该管用。
前两个元素设置为1(忽略前0)。for循环应该在数组中循环,因为fibonacci数等于两个前面的数字之和,所以我想添加它们,然后显示它们。
输出都是2,我不太清楚为什么。
注:我不是在直接寻找答案,而是一种我自己能找到答案的方法。

//Fibonacci sequence
#include <stdio.h>

int main(void) {
        int fib_numbers[40] = {1, 1}, i;


        for(i = 1; i < 40; i++) {
                fib_numbers[i] = fib_numbers[i] + fib_numbers[i - 1];
                printf("\t%d\n", fib_numbers[i]);
            }

        return 0;
}

最佳答案

在第一步之后,erray元素为0(未初始化,但在本例中为0)。那怎么办
fib[i+1]=fib[i]+fib[i-1];printf(“%d\n”,fib[i+1])?
当然,fib的大小必须是41而不是40。

关于c - 我如何正确地使此循环显示斐波那契数列的前40位?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5450670/

10-12 14:26
查看更多