描述:
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。
输入:
输入共 1 行,一个整数N。
-1,000,000,000 ≤ N≤ 1,000,000,000。
输出:
输出共 1 行,一个整数,表示反转后的新数。
样例输入:
样例 #1:
123样例 #2:
-380样例输出:
样例 #1:
321样例 #2:
-83
算法:
#include<stdio.h> int re(int x) { //函数rs功能:不断分离最后一位在上次基础上*10 int num = 0; while (x != 0) { int tail = x % 10; int num1 = num * 10 + tail; if ((num1 - tail) / 10 != num) //判断数据是否溢出 { return 0; } num = num1; x /= 10; } return num; } int main() { int n; scanf("%d", &n); printf("%d",re(n)); return 0; }
上天不会亏待努力的人,也不会同情假勤奋的人,你有多努力,时光它知道,路再远,终有尽,无论如何,我们都要一直坚持努力地走下去。