如何在C++中实现一个正确的递归函数来计算斐波那契数列?
时间: 2024-10-22 09:09:59 浏览: 30
C++实现的一个可以写递归lambda的Y函数
在C++中,你可以通过递归来实现计算斐波那契数列。斐波那契数列是一个经典的数列,其中每个数字都是前两个数字之和。下面是一个简单的递归函数示例:
```cpp
#include <iostream>
// 递归函数,用于计算第n个斐波那契数
int fibonacci(int n) {
// 基本情况:当n小于等于0时返回0,n为1时返回1
if (n <= 1)
return n;
else
// 递归调用,将当前问题分解为较小规模的问题
return fibonacci(n - 1) + fibonacci(n - 2);
}
int main() {
int n;
std::cout << "请输入一个正整数:";
std::cin >> n;
// 斐波那契数列可能会有性能问题,对于大数值递归会非常慢
std::cout << "第" << n << "个斐波那契数是:" << fibonacci(n) << std::endl;
return 0;
}
```
阅读全文