如何用C语言编程计算斐波那契数列的第n项?
时间: 2024-12-19 22:17:25 浏览: 0
c代码-递归计算斐波那契函数前n项和
在C语言中,计算斐波那契数列的第n项可以使用循环或者递归的方式实现。以下是两种常见的方法:
**1. 循环法(迭代法)**:
```c
#include <stdio.h>
int fibonacci(int n) {
if (n <= 0) {
return 0;
} else if (n == 1 || n == 2) {
return 1;
}
int a = 0, b = 1, temp;
for (int i = 3; i <= n; i++) {
temp = a + b;
a = b;
b = temp;
}
return b;
}
int main() {
int n;
printf("请输入要计算的斐波那契数列项数: ");
scanf("%d", &n);
printf("斐波那契数列的第 %d 项是: %d\n", n, fibonacci(n));
return 0;
}
```
**2. 递归法**:
```c
#include <stdio.h>
int fibonacci(int n) {
if (n <= 1)
return n;
else
return fibonacci(n - 1) + fibonacci(n - 2);
}
int main() {
int n;
printf("请输入要计算的斐波那契数列项数: ");
scanf("%d", &n);
printf("斐波那契数列的第 %d 项是: %d\n", n, fibonacci(n));
return 0;
}
```
注意递归法效率较低,对于大数值可能会导致栈溢出。
阅读全文