题3:数字反转
【题目描述】
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例222)。
【输入文件】
输入共 111 行,一个整数 NNN。
【输出文件】
输出共 111 行,一个整数,表示反转后的新数。
【输入样例1】
123
【输出样例1】
321
【输入样例2】
-380
【输出样例2】
-83
【数据范围】
−1,000,000,000≤N≤1,000,000,000-1,000,000,000 \le N \le 1,000,000,000−1,000,000,000≤N≤1,000,000,000
【代码如下】:
#include <bits/stdc++.h>
using namespace std;
char a[20];
int flag, flag2;
int main() {
cin >> a;
if (a[0] == '-') {
cout << '-';
flag2 = 1;
}
for (int i = strlen(a) - 1; i >= flag2; i--) {
if (a[i] == '0' && flag == 0) continue;
cout << a[i];
flag = 1;
}
return 0;
}
671

被折叠的 条评论
为什么被折叠?



