阅读量:1
C语言中,可以使用循环或递归的方式来求斐波那契数列的前n项值。
- 使用循环的方式:
#include <stdio.h> void fibonacci(int n) { int i, t1 = 0, t2 = 1, nextTerm; printf("斐波那契数列的前 %d 项为:\n", n); for (i = 1; i <= n; i++) { printf("%d, ", t1); nextTerm = t1 + t2; t1 = t2; t2 = nextTerm; } } int main() { int n; printf("请输入斐波那契数列的项数:"); scanf("%d", &n); fibonacci(n); return 0; }
- 使用递归的方式:
#include <stdio.h> int fibonacci(int n) { if (n == 0 || n == 1) { return n; } return fibonacci(n - 1) + fibonacci(n - 2); } int main() { int n, i; printf("请输入斐波那契数列的项数:"); scanf("%d", &n); printf("斐波那契数列的前 %d 项为:\n", n); for (i = 0; i < n; i++) { printf("%d, ", fibonacci(i)); } return 0; }
以上两种方法都可以求得斐波那契数列的前n项值,使用循环的方式效率通常较高,但递归的方式更为简洁。