这段代码定义了一个递归函数 `print_num`,它试图将一个整数按位打印出来。但实际输出结果与预期不符。 - 递归调用 `print_num(num/10)` 之后,`printf("%d",num)` 打印的是当前完整的 `num`,而不是单独的一位数字。例如输入 123,会先递归打印 1,然后打印 12,再打印 123,最终输出 "112123"。 - 要打印每一位数字,应该在递归调用之后只打印当前数字的最后一位,即 `num % 10`,而不是整个 `num`。
Copy this url:
QR-code: