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项值,使用循环的方式效率通常较高,但递归的方式更为简洁。