赞
踩
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零
#include<iostream> using namespace std; int main() { int n, n, sum, temp; cin >> n; sum = 0; n = n; if (n < 0) { n = -n; } while (n) { temp=n%10; sum = sum * 10 + temp; n /=10; } if (n < 0) sum = -sum; cout << sum; return 0; }
#include<iostream> #include<algorithm> #include<string> using namespace std; int main() { string s; cin >> s; if (s[0] =='-')//解决符号问题 { s.erase(0, 1); cout <<"-"; } reverse(s.begin(), s.end());//单纯reverse()无法将0进行消除 int idx = 0; while (s[idx] == '0' && idx<s.size()-1)//解决00000,下标留一位,防止全部为0 { idx++; } for (int i = idx; i < s.size(); i++) { cout << s[i]; } return 0; }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。