【题目描述】
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零,例如输入-380,反转后得到的新数为-83。
【输入】
输入共 1 行,一个整数N。-1,000,000,000 ≤ N≤ 1,000,000,000。
【输出】
输出共 1 行,一个整数,表示反转后的新数。
【输入样例】
123
【输出样例】
321
#include<iostream>
using namespace std;
int main()
{
int n;
int sum=0;
cin>>n;
if(n<0)//若n为负数
{
cout<<"-";//输出负号
n=-n;//取正
}
while(n)//相当于n!=0
{
sum=sum*10+n%10;//原数个位相当于新数最高位
n/=10;//整除10,相当于删除个位
}
cout<<sum<<endl;
return 0;
}
信息学奥赛一本通T1089:while与do-while语句 数字反转 归属于 while与do-while语句,更多同类题解源程序见:while与do-while语句 和 数字反转
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!