3239: 逆序输出一个数字
题目描述
现在给你一个数字,你现在要逆序输出它。
输入
一个数字(正整数,int类型)
输出
它的逆序数字,注意为10的逆序是01,要把前面的0省略,输出1
样例输入
copy
10
样例输出
1
提示
可以考虑使用字符串数组。
不仅要考虑10的情况,还需要考虑100,1000,10001000等情况。虽然简单判断最后一位的写法在oj上面也能通过,但是看了别人写的以后做了测试发现有问题。于是我做一个修改后的。比较简陋,大意理解即可。谢谢观看。
#include <stdio.h>
#include <string.h>
int main(int argc, char *argv[]) {
char a[20];
int i,len,flag;
gets(a);
len = strlen(a)-1;
for(i=len;i>=0;i--){
if(a[len]=='0'&&a[i]=='0'&&a[i-1]!='0'){//判断一下是不是从后往前数的0
flag = i-1;
break;
}
else
flag = len;
}
for(i=flag;i>=0;i--){
printf("%c",a[i]);
}
return 0;
}