学习时间:
2023年1月27日
题目描述:
题解分享:
// 作 者 : 繁 华 倾 夏
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h> // 调用pow函数
// 力扣(LeetCode):7. 整数反转
// x:传入的整数
int reverse(int x) {
long u; // 数位较大时设定为长整型
if (x == 0) { // 判断是否为0,为0时可直接返回
return 0;
}
else if (x < 0) { // 小于0时,使u记录符号
u = -1;
x = x * u; // 并使x为正,方便接下来的运算
}
else { // 大于0时,赋u为1
u = 1;
}
long s = 0, t = 0; // 注意为长整型
while (x) { // 遍历x
s = x % 10; // 取到各位数值
t = t * 10 + s; // 反向相乘
x /= 10; // 遍历
}
t *= u; // 判断符号
if ((t > pow(2, 31) - 1) || t < pow(-2, 31)) { // 判断是否越界
return 0; // 越界为0
}
else {
return t; // 不越界则正常输出
}
}
// 测试用例
// 输入 x = 123
// 输出 321
int main() {
int x = 123;
int re = reverse(x);
printf("%d", re);
return 0;
}
【繁华倾夏】【每日力扣题解分享】【Day13】