给定一个 32 位有符号整数,将整数中的数字进行反转。
这里考虑,交换时,需要注意位数不同,需要乘上对应的位数,代码如下:
int reverse(int x)
{
int result = 0;
while(x != 0)
{
int tmp = result * 10 + x % 10; //转换的中间值
x = x / 10; //每循环一次,x位数减少一位
if(tmp / 10 != result) //验证数据是否正确
{
result = 0;
break;
}
result = tmp;
}
return result;
}
原文地址:http://blog.51cto.com/12876518/2106753
时间: 2024-11-06 10:01:30