擅长:python、mysql、java
<p>看看最后一行的操作,如果它是奇数,则得到最后一个数字,然后将其乘以10,并将其添加到下一次调用的递归结果中,我相信这就是它不起作用的原因,请尝试下面的代码,这里您总是在末尾追加最后一个数字,以便最终的数字以正确的顺序出现</p>
<pre><code>def apenas_digitos_impares(n):
if n == 0:
return 0
elif (n % 10) % 2 == 0:
return apenas_digitos_impares(n // 10)
elif (n % 10) % 2 == 1:
return 10 * apenas_digitos_impares(n // 10) + (n % 10)
</code></pre>