C实现求一个整数的逆序
题目描述:
分析:
本题的关键点有两个,核心 输入整数,逆序输出整数。如123,输出321 细节 若逆序后的整数溢出,应返回0 实现:
一个实现的思路便是,把逆序前的数字一个个剥下来,再一个个拼回去。
~ 那怎么剥呢?
我们知道一个数通过除以10取余数得到的便是它的个位,那除以10后再除以10取余数便能得到它的十位,以此类推。
~ 那怎么拼呢?
想想123这个整数是怎么得来的,123=1*100+2*10+3*1代码:
int reverse(int x) { long r=0; while(x!=0){ r=r*10+x%10; x=x/10; } return (r<INT_MIN || r>INT_MAX) ? 0 : r; }