斐波纳切数列c++递归输出前20项
时间: 2024-03-09 18:45:07 浏览: 123
以下是输出斐波那契数列前20项的 C++ 递归实现代码:
```c++
#include <iostream>
using namespace std;
int fibonacci(int n)
{
if (n == 0 || n == 1)
return n;
else
return fibonacci(n-1) + fibonacci(n-2);
}
int main()
{
int n = 20;
cout << "斐波那契数列前" << n << "项为:";
for (int i = 0; i < n; i++)
cout << fibonacci(i) << " ";
cout << endl;
return 0;
}
```
这段代码使用循环输出斐波那契数列的前20项,使用递归实现每一项的计算。需要注意的是,递归实现效率较低,因此在实际应用中应该选择更高效的算法。
相关问题
斐波纳切数列c++递归
以下是斐波那契数列的 C++ 递归实现代码:
```c++
#include <iostream>
using namespace std;
int fibonacci(int n)
{
if (n == 0 || n == 1)
return n;
else
return fibonacci(n-1) + fibonacci(n-2);
}
int main()
{
int n;
cout << "请输入要计算的斐波那契数列的项数: ";
cin >> n;
cout << "斐波那契数列的第" << n << "项为:" << fibonacci(n) << endl;
return 0;
}
```
需要注意的是,斐波那契数列的递归实现效率较低,因为在计算每一项的时候都需要重复计算之前的项。在实际应用中,应该采用迭代的方式或者使用记忆化搜索来提高效率。
斐波纳切数列c++递归,且每行输出五个数
好的,以下是 C++ 递归实现斐波那契数列,并且每行输出五个数的程序:
```cpp
#include <iostream>
using namespace std;
int fibonacci(int n) {
if (n <= 1) {
return n;
}
return fibonacci(n-1) + fibonacci(n-2);
}
int main() {
int n;
cout << "请输入要输出的斐波那契数列的项数: ";
cin >> n;
cout << "斐波那契数列前 " << n << " 项为:" << endl;
for (int i = 1; i <= n; i++) {
cout << fibonacci(i) << " ";
if (i % 5 == 0) {
cout << endl;
}
}
cout << endl;
return 0;
}
```
程序中使用 `fibonacci` 函数实现斐波那契数列的递归计算,如果参数 `n` 小于或等于 1,则返回 `n`,否则返回 `fibonacci(n-1) + fibonacci(n-2)`。在 `main` 函数中,先通过标准输入获取用户输入的斐波那契数列的项数,然后使用 `for` 循环依次输出每一项,并且每行输出五个数。具体来说,代码中对于每一项都调用 `fibonacci` 函数进行计算,并且使用 `if` 判断是否需要换行,即判断当前项数是否为 5 的倍数。最后输出一个额外的换行符,以便程序的输出更加美观。
阅读全文