所以,我正在做一个项目,使函数获得第n个斐波那契数列。我不认为有任何错误,但我不满意结果,我无法修复它。程序总是输出0
错误: - 当你输入一个号码控制台返回0
#include <cmath>
using namespace std;
int input(string msg)
{
int number = 0;
while(number >= 0)
{
cin >> number;
return 0;
}
return 0;
}
int fib(int n)
{
if (n == 0) return 0;
if (n == 1) return 1;
return fib(n-1) + fib(n-2);
}
int main()
{
int fibonacci = input("Input a position");
int fibber = fib(fibonacci);
cout << fibber;
return 0;
}
使用调试器逐步完成。 – chris 2015-03-31 00:07:44
你的'input()'函数不应该返回'number',而不是0吗? – 2015-03-31 00:07:57