首页 > 编程语言 > 详细

408每日算法——反转整数

时间:2021-06-29 22:41:29      阅读:19      评论:0      收藏:0      [点我收藏+]

反转整数

一、问题描述

  给定一个32位有符号整数,将整数中得到数字进行反转

  示例:

    输入:123

    输出:321

    输入:-123

    输出:-321

    输入:120

    输出:21

二、算法思想

  取一个数的个位数只需要这个数对10取余,可以通过不断的对10取余然后除10,依次取出个位、十位……的数。最后就能得到反转后的数。

  如果计算机只能存储32位整数,那么反转后有溢出风险

三、代码

  

 1 #include <cstdio>
 2 const int INT_MIN=-214748364;
 3 const int INT_MAX=214748364;
 4 int main(){
 5     int x,res = 0;
 6     scanf("%d",&x);
 7     while(x){
 8         int y = x%10;
 9         x = x/10;
10         if(res < INT_MIN || res > INT_MAX){
11             return 0;
12         }else{
13             res = res*10+y;
14         }
15     }
16     printf("%d",res);
17     return 0;
18     
19 } 

 

408每日算法——反转整数

原文:https://www.cnblogs.com/zyq79434/p/14951937.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!