题目描述
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。
输入格式
一个整数 NN
输出格式
一个整数,表示反转后的新数。
输入输出样例
输入 #1
123
输出 #1
321
输入 #2
-380
输出 #2
-83
说明/提示
数据范围
-1,000,000,000≤N≤1,000,000,000−1,000,000,000≤N≤1,000,000,000
noip2011普及组第一题
代码(code)
#include<iostream>
using namespace std;
int main()
{
int N,m,flag=0;//前导零
cin>>N;
if(N==0)
cout<<0;
else//非零
{
if(N<0)
{
cout<<"-";
N=-N;
}//N是正整数
while(N!=0)
{
m=N%10;//取个位数字
N=N/10;//去掉个位数字
if(m>0)//1-9
{
cout<<m;
flag=1;
}
if(m==0 && flag==0)
continue;
if(m==0 && flag==1)
cout<<m;
}
}
return 0;
}