幸运7递归

时间:2016-12-08 06:39:56

标签: c++

提示:幸运数字是数字7,数字#7的数字必须是奇数。写一个递归函数来检查一个数字是否幸运。 (例如,幸运#:777,117,7。不幸运#:77,1277)。

我是初学者。我编写了下面的代码,但我不明白“if(num == 7)return 7”是如何工作的,虽然它应该返回一个布尔值。 :(

这是我的代码:(它检查是否有任何数字7并且所有数字7的总和是奇数)

bool lucky(int num)
{
    if (num < 10)
        if (num == 7) return 7; << HOW???? Please!
        else return 0;
    else if (num % 10 == 7)
        return (7 + lucky(num / 10)) % 2 != 0;
    else
        return lucky(num / 10);
}

1 个答案:

答案 0 :(得分:1)

在C ++中,可以考虑任何非零值&#34; true&#34;,而零是&#34; false&#34;。使用此方案,整数为implicitly convertiblebool