用C++语言递推做斐波那契数列
时间: 2023-09-16 19:09:43 浏览: 99
#include <stdio.h>
int main() {
int n, i;
int f[100] = {0, 1}; // 初始化斐波那契数列的前两项
printf("请输入一个正整数n:");
scanf("%d", &n);
// 递推求解斐波那契数列
for (i = 2; i <= n; i++) {
f[i] = f[i-1] + f[i-2];
}
// 输出斐波那契数列的前n项
printf("斐波那契数列的前%d项为:\n", n);
for (i = 1; i <= n; i++) {
printf("%d ", f[i]);
}
printf("\n");
return 0;
}
相关问题
c++斐波那契数列 递推
当使用递推方法计算斐波那契数列时,可以使用循环来逐步计算每个数字。下面是使用C++编写的代码示例:
```c++
#include <iostream>
int fibonacci(int n) {
if (n <= 1)
return n;
int prev = 0;
int current = 1;
for (int i = 2; i <= n; ++i) {
int temp = current;
current = prev + current;
prev = temp;
}
return current;
}
int main() {
int n;
std::cout << "请输入要计算的斐波那契数列的位置:";
std::cin >> n;
int result = fibonacci(n);
std::cout << "第" << n << "个斐波那契数列的值为:" << result << std::endl;
return 0;
}
```
在上面的代码中,我们使用循环从2开始逐步计算每个数字,直到达到所需的位置n。我们使用两个变量prev和current来保存前两个数字,并在每次迭代中更新它们。最后,返回current作为结果。
你可以运行这段代码,并输入要计算的斐波那契数列位置,它将输出相应位置上的值。
c++递推斐波那切数列
C++中可以使用递推的方式来实现斐波那契数列。递推是一种通过前面的数值计算后面的数值的方法。以下是使用递推实现斐波那契数列的示例代码:
```cpp
#include <iostream>
int fibonacci(int n) {
if (n <= 0) {
return 0;
}
if (n == 1 || n == 2) {
return 1;
}
int prev = 1;
int curr = 1;
int result = 0;
for (int i = 3; i <= n; i++) {
result = prev + curr;
prev = curr;
curr = result;
}
return result;
}
int main() {
int n;
std::cout << "请输入要计算的斐波那契数列的项数:";
std::cin >> n;
int fib = fibonacci(n);
std::cout << "第 " << n << " 项的斐波那契数列值为:" << fib << std::endl;
return 0;
}
```
在上述代码中,我们定义了一个`fibonacci`函数,该函数接受一个整数参数`n`,并返回斐波那契数列的第`n`项的值。在`main`函数中,我们首先从用户输入获取要计算的斐波那契数列的项数,然后调用`fibonacci`函数计算对应项的值,并将结果输出到控制台。
阅读全文