阅读量:6
求解 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 数列的和,具体选择哪种取决于实际需求和限制条件。