提示:幸运数字是数字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);
}
答案 0 :(得分:1)
在C ++中,可以考虑任何非零值&#34; true&#34;,而零是&#34; false&#34;。使用此方案,整数为implicitly convertible到bool
。