大佬sos 2023-10-15 11:05 采纳率: 76.9%
浏览 44

数字翻转 写一个程序,要求:输入一个正整数,输出该数逆置后的正整数。

问题 E: 数字翻转
时间限制: 1 Sec 内存限制: 128 MB
提交: 213 解决: 148
[提交] [状态] [讨论版] [命题人:外部导入]
题目描述

写一个程序,要求:输入一个正整数,输出该数逆置后的正整数。

如输入:123

则输出:321

若输入:102400

则输出:4201 (注意:若输出004201则判错)
输入

一个正整数,不超过109
输出

一个正整数
样例输入 Copy

123
样例输出 Copy

321

  • 写回答

2条回答 默认 最新

  • 超级小狗 2023-10-15 11:23
    关注
    #include <stdio.h>
    
    int main()
    {
        int n;
        scanf("%d", &n);  // 输入正整数
    
        int res = 0;  // 存储逆置后的结果
        while (n > 0) {
            res = res * 10 + n % 10;  // 计算逆置后的结果
            n /= 10;
        }
    
        printf("%d\n", res);  // 输出逆置后的正整数
    
        return 0;
    }
    

    代码的思路很简单,就是使用循环从输入的整数n中逐位取出数字,然后将这些数字按位逆序组合成一个新的整数res。具体来说,每次循环开始时,通过取余数运算得到n的末位数字,然后将其乘以10的相应次方后加入到res中。随着循环的进行,res中存储的数字位数也越来越多。最后,输出逆置后的正整数res即可。注意,当输入的正整数n的最后几位是0时,需要去掉这些前导0,否则会被认为是错误结果。

    评论

报告相同问题?

问题事件

  • 创建了问题 10月15日

悬赏问题

  • ¥15 preLaunchTask"C/C++: aarch64- apple-darwin22-g++-14 生成活动 文件”已终止,退出代码为-1。
  • ¥18 关于#贝叶斯概率#的问题:这篇文章中利用em算法求出了对数似然值作为概率表参数,然后进行概率表计算,这个概率表是怎样计算的呀
  • ¥20 C#上传XML格式数据
  • ¥15 elementui上传结合oss接口断点续传,现在只差停止上传和继续上传,各大精英看下
  • ¥100 单片机hardfaulr
  • ¥20 手机截图相片分辨率降低一半
  • ¥50 求一段sql语句,遇到小难题了,可以50米解决
  • ¥15 速求,对多种商品的购买力优化问题(用遗传算法、枚举法、粒子群算法、模拟退火算法等方法求解)
  • ¥100 速求!商品购买力最优化问题(用遗传算法求解,给出python代码)
  • ¥15 虚拟机检测,可以是封装好的DLL,可付费