数字反转

3.数字反转

Description:

给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。

Input:输入共 1 行,一个整数N。-1,000,000,000 ≤ N≤ 1,000,000,000。

Output:输出共 1 行,一个整数,表示反转后的新数。

Sample Input:样例 #1:123  样例 #2:-380

Sample Output:样例 #1:321  样例 #2:-83

 

#include <stdio.h>

int main()
{

int n, r = 0;
scanf("%d", &n);

while(n) {
r = r*10+(n%10); 妙!!! 第一次循环r为n的个位数;第二次循环原先的个位数乘10 加上原先n的十位数
n /=10;                            第三次循环原先的个位数乘100 十位数乘十  加上原先的百位数
}

printf("%d\n", r);

return 0;
}

posted on 2016-11-05 12:20  qq77530202  阅读(298)  评论(0编辑  收藏  举报