尝试用递归做奇数求和

Description
计算非负整数 m 到 n(包括m 和 n )之间的所有奇数的和,其中,m 不大于 n,且n 不大于300。例如 m=3, n=12, 其和则为:3+5+7+9+11=35
Input
两个数 m 和 n,两个数以空格间隔,其中 0 <= m <= n <= 300 。
Output
奇数之和
Sample Input
7 15
Sample Output
55

尝试用递归思想解题,代码如下:

int he(int n,int m)
{
if (n == m && n % 2 == 0)
    return 0;
else if (n == m)
    return n;
else if (n % 2 == 0)
    return he(n-1,m);
else
    return n + he(n - 1, m);

}


int main()
{
int m, n;
cin >> m >> n;
cout << he(n, m);

return 0;
}

以上。

你可能感兴趣的:(尝试用递归做奇数求和)