一、思路
输入一个int型数x
1、先计算出x的余数,为了读出数x的最后一位
2、对x除以10,得到一个新的x
3、重复1、2两个步骤就可以依次得到x的每一位数字
4、对x的各个位进行加权计算得出翻转后的结果,
5、翻转过程中要判断是否超出了int型可存储的最大范围。
二、程序
int reverse(int x)
{
int m = 0;
int temp;
while (x)
{
temp = m * 10 + x % 10;
if (temp / 10 != m) return 0;
x/= 10;
m = temp;
}
return m;
}
其中的if循环是判断是否翻转后的数超出了int型的范围。
多次修改并看别人的例子,发现修改后的程序基本已经和他人的一样了。