酷代码 AI
菜单
服务商

本题要求实现一个求整数的逆序数的简单函数。 函数接口定义: int reverse( int number ); 其中函数reverse须返回用户传入的整型number的逆序数。 裁判测试程序样例: #include <stdio.h> int reverse( int number ); int main() { int n; scanf("%d", &n); printf("%d\n", reverse(n)); return 0; } /* 你的代码将被嵌在这里 */

```c #include <stdio.h> int reverse( int number ) { int reversed = 0; int sign = number < 0 ? -1 : 1; number = number < 0 ? -number : number; while (number != 0) { reversed = reversed * 10 + number % 10; number /= 10; } return sign * reversed; } int main() { int n; scanf("%d", &n); printf("%d\n", reverse(n)); return 0; } ``` 代码解释: 1. 符号处理:首先判断输入的 `number` 是否为负数,用 `sign` 记录符号,若为负数则将 `number` 取绝对值,方便后续统一处理。 2. 逆序计算:使用 `while` 循环,在每次循环中,将 `reversed` 乘以 10 并加上 `number` 的最后一位数,然后将 `number` 除以 10 去掉最后一位数,直到 `number` 变为 0。 3. 恢复符号:最后将计算得到的逆序数乘以 `sign`,恢复其原来的符号。 4. 返回结果:返回逆序数。 [2025-12-10 23:06:36 | AI问答 | 295点数解答]

相关提问
发财导航,免费问AI
实用工具查看更多