试题描述
|
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。 |
输入
|
输入共1行,一个整数N
|
输出
|
输出共1行,一个整数,表示反转后的新数
|
输入示例
|
例1:123
例2:-380 |
输出示例
|
例1:321
例2:-83 |
其他说明
|
【数据范围】-1,000,000,000 ≤N≤1,000,000,000。
|
1 #include <iostream> 2 3 using namespace std; 4 char s[100]; 5 int main() 6 { 7 scanf("%s",s); 8 int str=strlen(s),l; 9 if(s[0]=='-') {cout<<"-";l=1;} 10 else l=0; 11 int temp=str-1,r=str-1; 12 bool hh=false; 13 while(hh==false) 14 { 15 if(s[temp]!='0') hh=true; 16 else {temp--;r--;} 17 } 18 for(int i=r;i>=l;i--) cout<<s[i]; 19 return 0; 20 }