c语言

c语言fibonacci数列求和的方法是什么

小亿
172
2023-12-09 10:47:30
栏目: 编程语言

求解 Fibonacci 数列的和有多种方法,以下是其中的两种常见方法:

方法一:迭代法 使用循环结构计算 Fibonacci 数列的和,将前两个数初始化为 0 和 1,然后通过循环依次计算后续的 Fibonacci 数并求和,直到达到指定的数列长度。

#include <stdio.h>

int main() {
    int n, i, sum = 0;
    int a = 0, b = 1;

    printf("Enter the length of Fibonacci sequence: ");
    scanf("%d", &n);

    for (i = 0; i < n; i++) {
        sum += a;
        int temp = a + b;
        a = b;
        b = temp;
    }

    printf("Sum of Fibonacci sequence: %d\n", sum);

    return 0;
}

方法二:递归法 使用递归函数计算 Fibonacci 数列的和,递归函数中首先判断是否已经到达指定的数列长度,若是则返回 0,否则返回当前 Fibonacci 数并将递归调用传入下一个数。

#include <stdio.h>

int fibonacci(int n) {
    if (n <= 0) {
        return 0;
    } else if (n == 1) {
        return 1;
    } else {
        return fibonacci(n - 1) + fibonacci(n - 2);
    }
}

int main() {
    int n, i, sum = 0;

    printf("Enter the length of Fibonacci sequence: ");
    scanf("%d", &n);

    for (i = 0; i < n; i++) {
        sum += fibonacci(i);
    }

    printf("Sum of Fibonacci sequence: %d\n", sum);

    return 0;
}

这两种方法都可以用来求解 Fibonacci 数列的和,具体选择哪种取决于实际需求和限制条件。

0
看了该问题的人还看了