题目描述
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零,如下样例:
输入
输入共 1 行,一个整数N。-1,000,000,000 ≤ N≤ 1,000,000,000。
输出
输出共 1 行,一个整数,表示反转后的新数。
输入样例1
123
输出样例1
321
输入样例2
-380
输出样例2
-83
#include<bits/stdc++.h>
using namespace std;
int main()
{
long n,temp,sum=0;
cin>>n;
if(n<0) //若为负数,在其前面加上“-”负号
cout<<"-" ;
temp = abs(n); //求出该数的绝对值
while(temp)
{
sum = sum*10+temp%10;//将原来数temp的最低位通过对10求模,再加上sum*10,可将其变为最高位。
temp/=10; //由于个位在上一步已经使用,除去个位。
}
cout<<sum;
return 0;
}