用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;
}
相关推荐
挖掘狂人2 分钟前
哈希算法:一根看不见的 "指纹",如何撑起整个互联网
算法·程序员·掘金技术征文
老王爱玩车14 分钟前
预处理详解
c语言·开发语言·学习
灯澜忆梦31 分钟前
【Go Zap 日志库】#1 |快速上手 + 配置详解
开发语言·后端·golang
不会就选b36 分钟前
算法日常・每日刷题--<动态规划>22
算法·动态规划
a努力。38 分钟前
四维解析Agent记忆架构:从零实战LangGraph长期记忆
java·开发语言·数据库
释厄62341 分钟前
字画同体论——字即画·几何即字·漫画与小说=文本层
人工智能·算法
Wang's Blog1 小时前
Java 项目部署之 Docker工具快速入门: Docker Compose 初识与安装
java·开发语言·docker
niucloud-admin1 小时前
JAVA V6 多商户商城 开发文档——项目启动
java·开发语言·python
学逆向的1 小时前
C 控制台指令
c语言·开发语言·网络安全
沫璃染墨1 小时前
从零入门数据结构与算法(一):复杂度分析——从算法效率到时间与空间复杂度
c语言·开发语言·数据结构·笔记·算法·飞书