当前位置: 首页 > news >正文

PTA——逆序的三位数

程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。

输入格式:

每个测试是一个3位的正整数。

输出格式:

输出按位逆序的数。

输入样例:

123

输出样例:

321
#include<stdio.h>
int main(){int x,a,b,c,d,sum;scanf("%d",&x);a=x%10;b=x/100;c=x%100;d=c/10;sum=a*100+b+d*10;printf("%d",sum);return 0;}

分析:

这段代码的目的是读取一个整数x,并基于这个整数的各个数字位上的数值重新组合并求和,最后输出这个和。

以下是代码的思路总结和解题思路:

  1. 变量定义:

    • x: 存储用户输入的整数。
    • abcd: 分别用于存储x的个位、百位、十位和个位。
    • sum: 用于存储重新组合后的数字的和。
  2. 输入:

    • 使用scanf函数读取用户输入的整数x
  3. 计算:

    • a=x%10;: 通过取模操作获取x的个位数。
    • b=x/100;: 通过整数除法获取x的百位数。
    • c=x%100;: 通过取模操作获取x的十位数。
    • d=c/10;: 通过整数除法获取x的个位数(这里可能有个逻辑错误,因为c已经是十位数,所以这一步其实没有意义)。
    • sum=a*100+b+d*10;: 根据重新组合的原则,计算总和。例如,如果输入是123,则计算过程为:a=3, b=2, c=12, d=12/10=1.2(但这里取整数为1)。所以sum=300+2+10=312。
  4. 输出:

    • 使用printf函数输出重新组合后的数字的和。
  5. 返回值:

    • return 0;: 表示程序正常结束。

需要注意的是,代码中存在一个逻辑错误:d=c/10;这一步是多余的,因为c已经是十位数。正确的逻辑应该是直接使用c的值进行后续的计算。

 

http://www.lryc.cn/news/274009.html

相关文章:

  • ChatGPT怎么帮我上班的
  • WPF 漂亮长方体、正文体简单实现方法 Path实现长方体 正方体方案 WPF快速实现长方体、正方体的方法源代码
  • Nginx(十三) 配置文件详解 - 反向代理(超详细)
  • 谷歌浏览器启用实时字幕功能
  • php接口优化 使用curl_multi_init批量请求
  • 联邦拜占庭共识算法的工作流程
  • 国家开放大学形成性考核 统一考试 学习资料参考
  • 2401C++,实现文件服务器和聊天室
  • 【ESP-NOW 入门(ESP32 with Arduino IDE)】
  • PHP序列化总结2--常见的魔术方法
  • Docker 入门 ------容器互通以及Dockerfile
  • AI绘图模型不会写字的难题解决了
  • vue-cli创建项目时由esLint校验导致报错或警告的问题及解决
  • uniapp:实现手机端APP登录强制更新,从本地服务器下载新的apk更新,并使用WebSocket,实时强制在线用户更新
  • 设计循环队列——oj题622
  • 阿里后端实习一面面经
  • element-ui组件DatePicker日期选择器移动端兼容
  • burpsuite 爆破
  • SparkSQL基础解析(三)
  • gz-hamonic 安装提示缺少许多依赖无法安装
  • 新版Edge卸载
  • Ansibe自动化基础
  • 2023 年中国高校大数据挑战赛赛题B DNA 存储中的序列聚类与比对-解析与参考代码
  • 决策树--分类决策树
  • 【2024/1/5】
  • CNN——VGG
  • 深入理解Java中的多线程编程与并发控制
  • 提供10个mysql的实例和思路
  • FPGA项目(14)——基于FPGA的数字秒表设计
  • 浅谈指数移动平均(ema)