#include <iostream>
using namespace std;
int findSumofOdds(int n);
int main()
{
int n = 88;
int x;
x = findSumofOdds(n);
cout << x << endl;
return 0;
}
int findSumofOdds(int n)
{
if (n != 1)
{
if(n % 2 == 0)
n = (n - 1);
return(findSumofOdds(n-1) + 1);
}
else
return 1;
}
为什么不是这个递归工作?它试图运行,然后崩溃。请告诉我。我的老师说,它会工作,但没有。C++递归分割错误
你知道这有一个封闭的公式,不是吗? 1 + 3 + 5 + ... + 2n-1 = n * n。 – 2013-04-23 14:53:26