我是靠谱客的博主 欣慰咖啡,最近开发中收集的这篇文章主要介绍给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转
注意:
假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。

关键在于如何处理溢出,其余都比较容易

解答:
#define MIN -2147483648
#define MAX 2147483647
int reverse(int x){
long result = 0;
while (x != 0) {
result = result * 10;
if ((result > MAX) || (result < MIN)) {
return 0;
}
result = result + x % 10;
x = x / 10;
}
return result;
}

最后

以上就是欣慰咖啡为你收集整理的给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。的全部内容,希望文章能够帮你解决给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部