数字反转
题目
给定一个整数,请将该数各个位上数字反转得到一个新数。
新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零
输入
输入共 111行,一个整数 NNN
输出
输出共 111 行,一个整数,表示反转后的新数NNN
输入样例
-380
输出样例
-83
解题思路
用sprintf(s, %d, n) 将整数NNN转化为字符串SSS
sscanf(c, “%d”, &n) 将字符串SSS转化为整数NANANA
程序如下
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int n, l;
char s[1001], c[1001];
int main()
{
scanf("%d",&n);
sprintf(s, "%d", n);
l = strlen(s);
for(int i = 0; i <= l - 1; ++i)
c[l - i - 1] = s[i];
if(n < 0) printf("-");
sscanf(c, "%d", &n);
printf("%d",n);
return 0;
}