来源:《信息学奥赛一本通(C++版)》
测评地址:信息学奥赛一本通在线测评
【题目描述】
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零,例如输入−380−380,反转后得到的新数为−83−83。
【输入】
输入共 1 行,一个整数N。
−1,000,000,000≤N≤1,000,000,000。
【输出】
输出共 1 行,一个整数,表示反转后的新数。
【输入样例】
123
【输出样例】
321
【提示】【输入输出样例 2】
输入:
-380
输出:
-83
代码如下:
注:代码仅供参考,不只有一种解法。
//while循环
#include<iostream>
using namespace std;
int main(){
int n,right_digit;
cin>>n;
while(n!=0){if(n<0){cout<<"-";n=-n;}if(n>0){if(n%10==0) {cout<<"";n=n/10;}}right_digit=n%10;if(n%10!=0) {cout<<right_digit;n=n/10;}}
return 0;
}