题目内容:
输入一个整数,反转之后输出。注意: 1- 反转之后,如果数字前面有0,必须去掉0; 2- 整数没有长度限制; 3- 如果-号,则保持;
输入描述:
一个整数
输出描述:
反转后的整数
输入样例:
784 -9840 11111112222222
输出样例
487 -489 22222221111111
限制条件
JAVA 运行时间 3000ms 运行内存 3000kb
C++ 运行时间 3000ms 运行内存 3000kb
这个题思路很简单的,没有什么难度,按字符输入,倒着输出。主要要注意两点
1.判断一下是否是负数
2.判断数后面的0的个数,如果后面全0不输出,0要在数字之前才能输出。
看代码吧。
#include<iostream>
#include<string.h>
using namespace std;
int main(){
char a[30];
cin>>a;
int n=strlen(a);
char x=a[0];
int j=0;
if(x=='-'){
j=1;
cout<<x;
}
int s=0;
for(int i=n-1;i>=j;i--){
if(a[i]=='0'&&s>0){
cout<<a[i];
}
if(a[i]!='0'){
s++;
cout<<a[i];
}
}
cout<<endl;
return 0;
}