用c++使输入的数字各个位上数字反转得到一个新数

为了使得输入的数字,各个位上的数字反转,我们首先要清楚,如何去取,各个位上的数字,但是因为不知道此时输入的数字是几位数,那么我们就依次去取得他个位上的数字,然后将原来的数字除以10,接着继续取个位上的数字,那么就能把数字全部取出,具体代码如下:

cpp 复制代码
#include <iostream>
#include <math.h>
using namespace std;
int main(){
    int n , result = 0 , a = 0;
    bool isNegative = false;   //判断是否为负数,默认为正数
    cin >> n;  //输入要反转的数
    while(n != 0){       //是0则直接输出0 不是0则一直除到为0 那么就把该数的所有位数取出
        if(n < 0){        
            n = abs(n);            //如果n小于0 则用abs公式取他的绝对值
            isNegative = true;
        }
        a = n%10;                    //取出此时个位上的数字
        n = n/10;                    //取掉上述a之后,n的值
        result = result*10 + a; //将取得的数填入,eg:123 取3 0*10 + 3 = 3 继续取 3*10 +2 =32
    }
    if(isNegative){
        result *= -1;        //如果是负数则整体乘以-1
    }
    cout << result << endl;
    return 0;
}
相关推荐
KingRumn13 分钟前
Linux信号之标准信号与实时信号
linux·算法
沐知全栈开发2 小时前
HTML5 浏览器支持
开发语言
wasp5202 小时前
AgentScope Java 核心架构深度解析
java·开发语言·人工智能·架构·agentscope
WHOVENLY2 小时前
【javaScript】- 笔试题合集(长期更新,建议收藏,目前已更新至31题)
开发语言·前端·javascript
慌糖3 小时前
流-为序列化解释
开发语言
LXS_3573 小时前
Day 18 C++提高 之 STL常用容器(string、vector、deque)
开发语言·c++·笔记·学习方法·改行学it
源代码•宸3 小时前
Leetcode—620. 有趣的电影&&Q3. 有趣的电影【简单】
数据库·后端·mysql·算法·leetcode·职场和发展
王琦03184 小时前
Python 函数详解
开发语言·python
胡伯来了4 小时前
13. Python打包工具- setuptools
开发语言·python
2301_800256114 小时前
地理空间数据库中的CPU 和 I/O 开销
数据库·算法·oracle