编程常见函数--求反序int(C、C++、Python版)
·
目录
函数功能
该函数用于计算一个整数的反序数,常用于判断对称性或者反序的场景
例如,输入
123,输出321;输入-123,输出-321。
思路
- 假设输入为x;反序为revx,revx初始为0
- 取x的个位数(x%10)加到revx(每次循环revx要先*10再加
- 将当前x的个位数去掉(x/10),成为新x
- 循环上述操作,直到x为0

具体步骤
变量初始化
定义变量 revx 并初始化为 0,用于存储最终的反序数结果。
循环条件
使用 while 循环,条件是输入的整数 x 不等于 0。循环会持续执行,直到 x 的所有位数被处理完毕。
反序数计算
在循环体内,每次迭代执行以下操作:
revx *= 10:将revx左移一位,为新的个位数腾出空间。revx += x % 10:取x的个位数,并加到revx的末尾。x /= 10:将x右移一位,去掉已经处理过的个位数。
返回值
循环结束后,返回计算得到的反序数 revx。
示例说明
以输入 123 为例:
- 初始时
revx = 0,x = 123。 - 第一次循环:
revx = 0 * 10 + 3 = 3。x = 123 / 10 = 12。
- 第二次循环:
revx = 3 * 10 + 2 = 32。x = 12 / 10 = 1。
- 第三次循环:
revx = 32 * 10 + 1 = 321。x = 1 / 10 = 0。
- 循环结束,返回
321。
注意事项
该函数未显式处理负数情况,但实际测试中,负数也能正确计算反序数。例如,输入 -123 时:
- 取模运算
x % 10会得到负的个位数(如-3)。 - 最终结果
revx会自然累积为负数(如-321)。
C C++通用代码
int Reverse(int x) { //求反序数
int revx = 0;
while (x != 0) {
revx *= 10;
revx += x % 10;
x /= 10;
}
return revx;
}
Python代码
def reverse(x):
revx = 0
while x != 0:
revx *= 10
revx += x % 10
x = x // 10
return revx
更多推荐


所有评论(0)