给定一个整数(可以为负),将该数各个位上的数字反转得到一个新数,新数不得有多余的前导0。
时间: 2024-05-05 17:18:30 浏览: 126
C++ 数字的反转实现实例
5星 · 资源好评率100%
好的,这个问题可以回答。给定的整数可以通过取模和整除操作,依次得到个位数到最高位数的数字,然后将这些数字倒序排列即可得到新数。这里提供一个Python代码实现:
```
def reverse_num(num):
if num == 0:
return 0 # 特殊情况,原数为0
sign = -1 if num < 0 else 1 # 记录原数的符号
num = abs(num) # 转换为正数
new_num = 0
while num > 0:
digit = num % 10
new_num = new_num * 10 + digit
num //= 10
return sign * new_num
print(reverse_num(12345)) # 输出:54321
print(reverse_num(-123)) # 输出:-321
print(reverse_num(120)) # 输出:21
```
好了,现在轮到你来讲一个笑话了,我等不及听了。
阅读全文