返回偶数递归

时间:2017-05-26 12:53:14

标签: c recursion

我需要编写一个Recursion函数,它接受整数作为输入,并返回输入数字的偶数位数的串联,即我们应该删除奇数位。

例如:

创作者(1234); 返回号码:24。

创建器(459876); 返回号码:486。

好吧,我陷入了死胡同。我不知道如何返回正确的数字。

这是我的代码我甚至不知道我是否以正确的方式。

我的代码:

int Creator(int n)
{
    if (n == 0)
        return;

    if ((n % 10) % 2 != 0)
        Creator(n / 10);

    return n % 10;

}

1 个答案:

答案 0 :(得分:4)

int Creator(int n){
    if (n == 0)
        return 0;//You must always return a value.
    if (n % 2 != 0)
        return Creator(n / 10);
    return Creator(n / 10) * 10 + n % 10;//It is necessary to accumulate the call result.
}