一、题目链接
http://noi.openjudge.cn/ch0105/29/
二、解题思路
◎ 在当前整数n不等于0时,循环处理如下:
→ 当前反转数r=上一次的反转数r×10+当前整数n的个位数;
→ 当前整数n=当前整数n/10,也即移除当前整数n的个位数;
◎ 循环结束后,r即为所求的反转数。
三、实施步骤
◎ 首先,定义并输入int类型的整数n,代表原整数;定义int类型的整数r,代表反转数,初始时r为0;
◎ 在当前整数n不等于0时,循环处理如下:
→ 令r=r*10+n%10;
→ 令n=n/10;
◎ 最后,输出r。
四、C++程序
#include <iostream>
using namespace std;
int main()
{
int n; // 原整数
cin >> n;
int r = 0; // 反转数
/* 在当前整数n不等于0时 */
while (n != 0)
{
r = r * 10 + n % 10; // 当前反转数r=上一次的反转数r×10+当前整数n的个位数
n = n / 10; // 移除当前整数n的个位数
}
cout << r;
return 0;
}