阅读量:1
C语言中斐波那契数列求和的方法可以通过循环或递归实现。
- 循环方法:
#include<stdio.h> int fibonacci(int n){ int first = 0; int second = 1; int sum = first + second; for(int i=3; i<=n; i++){ int temp = first + second; sum += temp; first = second; second = temp; } return sum; } int main(){ int n; printf("请输入斐波那契数列的项数:"); scanf("%d", &n); int result = fibonacci(n); printf("斐波那契数列的前%d项和为:%d\n", n, result); return 0; }
- 递归方法:
#include<stdio.h> int fibonacci(int n){ if(n <= 2){ return 1; }else{ return fibonacci(n-1) + fibonacci(n-2); } } int fibonacciSum(int n){ int sum = 0; for(int i=1; i<=n; i++){ sum += fibonacci(i); } return sum; } int main(){ int n; printf("请输入斐波那契数列的项数:"); scanf("%d", &n); int result = fibonacciSum(n); printf("斐波那契数列的前%d项和为:%d\n", n, result); return 0; }
以上是两种常见的方法,循环方法效率较高,递归方法效率较低但代码简洁。