在这里插入图片描述
🌏个人博客主页:意疏-CSDN博客
在这里插入图片描述

希望文章能够给到初学的你一些启发~ 如果觉得文章对你有帮助的话,点赞 + 关注+ 收藏支持一下笔者吧~

阅读指南:

  • 开篇说明
    • 题目一、厘米换算英寸
    • 题目二、然后是几点
    • 题目三、 逆序的三位数
    • 题目四、BCD解密
    • 题目五、表格输出


开篇说明

本文我们来写一下浙江大学PTA平台经典代码

题目一、厘米换算英寸

如果已知英制长度的英尺foot和英寸inch的值,那么对应的米数是(foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸。

输入格式:

输入在一行中给出1个正整数,单位是厘米。

输出格式:

在一行中输出这个厘米数对应英制长度的英尺和英寸的整数值,中间用空格分开。
英寸的值应该小于12.

输入样例:

170

输出样例

5 6

我们首先来看思路:

  1. 要定义三个整型变量 foot,inch和meter。
    其中foot、inch用于存储转换后的英尺和英寸值,meter可以用来存储用户输入的米数。
  2. 其次我们还要读入一个整数 来存储到整型变量meter中。
  3. 然后我们将米数转换为英尺。因为1英尺等于30.448厘米,所以将米数除30.48即可得到英尺数。
  4. 最后我们还要计算剩余的英寸数,首先计算剩余的米数(meter - 30.48 * foot),然后再将其转换为英寸(剩余米数除30.48乘12)
  • 这是示例代码:
#include <stdio.h>
int main()
{int foot,inch;int meter;*scanf("%d",&meter);foot = meter/30.48;inch = (meter-30.48*foot)/30.48*12;printf("%d %d\n",foot,inch);return 0;
}

这是最终结果
在这里插入图片描述

题目二、然后是几点

有时候人们用四位数字表示一个时间,比如 1106 表示 11 点零 6 分。现在,你的程序要根据起始时间和流逝的时间计算出终止时间。
读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,例如 5 点 30 分表示为 530;0 点 30 分表示为 030。注意,第二个数字表示的分钟数可能超过 60,也可能是负数。。

输入格式:

输入在一行中给出 2 个整数,分别是四位数字表示的起始时间、以及流逝的分钟数,其间以空格分隔。注意:在起始时间中,当小时为个位数时,没有前导的零,即 5 点 30 分表示为 530;0 点 30 分表示为 030。流逝的分钟数可能超过 60,也可能是负数。

输出格式:

输出不多于四位数字表示的终止时间,当小时为个位数时,没有前导的零。题目保证起始时间和终止时间在同一天内。

输入样例:

1120 110

输出样例

1310

我们首先来看思路:

  1. 输入解析:读取四位时间(如1120)和分钟数(如110)
  2. 时间拆分:1120 → 11小时20分
  3. 转分钟数:11×60+20=680分钟
  4. 时间计算:680+110=790分钟
  5. 转回时分:790→13小时10分(790÷60=13,790%60=10)
  6. 处理负数:若分钟为负,小时借1(如-30→小时-1,分钟+60)
  7. 输出格式:小时直接输出,分钟补零(如13:10→1310,5:05→505)
  • 这是示例代码:
#include <stdio.h>
int main()
{int foot,inch;int meter;*scanf("%d",&meter);foot = meter/30.48;inch = (meter-30.48*foot)/30.48*12;printf("%d %d\n",foot,inch);return 0;
}

这是最终结果
在这里插入图片描述

题目三、 逆序的三位数

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

输入格式:

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

输出格式:

输出按位逆序的数。

输入样例:

123

输出样例

321
我们首先来看思路:

  1. 输入解析:读取一个三位正整数(如123)
  2. 数字分解
    • 百位 = 原数 ÷ 100(123 → 1)
    • 十位 = (原数 ÷ 10) % 10(123 → 2)
    • 个位 = 原数 % 10(123 → 3)
  3. 反转重组
    • 反转数 = 个位×100 + 十位×10 + 百位(3×100+2×10+1=321)
  4. 输出结果
    • 直接输出反转后的整数(自动忽略前导零,如700反转后为7而非007)

这是最终结果

#include <stdio.h>
int main() {int num;scanf("%d", &num);// 分解三位数的各位数字int hundreds = num / 100;      // 百位int tens = (num / 10) % 10;    // 十位int ones = num % 10;           // 个位int reversed = ones * 100 + tens * 10 + hundreds;printf("%d\n", reversed);return 0;
}    
  • 这是最终结果:
    在这里插入图片描述

题目四、BCD解密

BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位。所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12。但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了。于是BCD的0x12被输出成了十进制的18了!
现在,你的程序要读入这个错误的十进制数,然后输出正确的十进制数。提示:你可以把18转换回0x12,然后再转换回12。

输入格式:

输入在一行中给出一个[0, 153]范围内的正整数,保证能转换回有效的BCD数,也就是说这个整数转换成十六进制时不会出现A-F的数字。

输出格式:

输出对应的十进制数。

输入样例:

18

输出样例

12
我们首先来看思路:

  1. 输入处理:读取一个十进制整数 c。
    进制转换:
    计算 c 除以 16 的商(a = c / 16),得到十六进制的高位数字。
    计算 c 除以 16 的余数(b = c % 16),得到十六进制的低位数字。
  2. 结果重组:将高位和低位数字组合为一个两位十进制数(answer = a * 10 + b)。
  3. 输出结果:直接打印组合后的结果。
    这是最终结果
#include <stdio.h>
int main(){int a,b,c,answer;scanf("%d",&c);a = c / 16;b = c % 16;answer = a * 10 + b;printf("%d",answer);
return 0;   
}
  • 这是最终结果:
    在这里插入图片描述

题目五、表格输出

本题要求编写程序,按照规定格式输出表格。

输入格式:

本题目没有输入。

输出格式:

ProvinceArea(km²)Pop.(10K)
Anhui139600.006461.00
Beijing16410.541180.70
Chongqing82400.003144.23
Shanghai6340.501360.26
Zhejiang101800.004894.00
我们首先来看思路:
  1. 直接输出:将表格内容作为字符串常量直接嵌入到printf函数中。
  2. 格式控制:通过手动添加换行符\n和空格来控制表格的行和列对齐。
  3. 原封不动:完全保留原始表格的格式,包括分隔线、列标题和数据行。
    这是示例代码
#include <stdio.h>
int main (){printf ("------------------------------------\nProvince      Area(km2)   Pop.(10K)\n------------------------------------\nAnhui         139600.00   6461.00\nBeijing        16410.54   1180.70\nChongqing      82400.00   3144.23\nShanghai        6340.50   1360.26\nZhejiang      101800.00   4894.00\n------------------------------------\n");return 0;
}
  • 这是最终结果:
    在这里插入图片描述
    在这里插入图片描述

意气风发,漫卷疏狂
学习是成长的阶梯,每一次的积累都将成为未来的助力。我希望通过持续的学习,不断汲取新知识,来改变自己的命运,并将成长的过程记录在我的博客中
如果我的博客能给您带来启发,如果您喜欢我的博客内容,请不吝点赞、评论和收藏,也欢迎您关注我的博客。
您的支持是我前行的动力。听说点赞会增加自己的运气,希望您每一天都能充满活力!

愿您每一天都快乐,也欢迎您常来我的博客。我叫意疏,希望我们一起成长,共同进步。
logo 我是意疏 下次见!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/92303.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/92303.shtml
英文地址,请注明出处:http://en.pswp.cn/diannao/92303.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

catkin build的config设置指南[设置多种make模式或策略]

在本篇文章中&#xff0c;我们来尽可能详细地深入探讨 catkin config 的使用方法。这是掌握 catkin_tools 工作流的关键&#xff0c;能极大地提升你的开发效率和项目的规范性。 catkin config 的核心思想 首先&#xff0c;要理解它的核心思想&#xff1a;为你的 Catkin 工作空间…

Ubuntu挂载和取消挂载

在 Ubuntu 中&#xff0c;挂载&#xff08;Mount&#xff09;和取消挂载&#xff08;Unmount&#xff09;是管理存储设备&#xff08;如硬盘、U盘、ISO镜像等&#xff09;的常见操作。以下是详细指南&#xff1a;1. 挂载&#xff08;Mount&#xff09; 1.1 查看可用存储设备 ls…

Vue开发常用库(含npm安装命令)

Vue开发常用库&#xff08;含npm安装命令&#xff09; 核心生态系统&#xff1a;Vue Router - 官方路由管理器 npm install vue-router4 # Vue 3 npm install vue-router3 # Vue 2Pinia - 新一代状态管理库 npm install piniaVuex - 传统状态管理库 npm install vuexnext …

[硬件电路-39]:激光光路的光信号处理、模拟电路的电信号处理、数字电路的电信号处理、软件的信号处理,有哪些共通的操作、运算、变换?

激光光路、模拟电路、数字电路及软件中的信号处理在操作、运算和变换层面存在显著共性&#xff0c;这些共性体现了信号处理的核心逻辑在不同技术领域的通用性。以下是具体分析&#xff1a; 目录 一、共通操作&#xff1a;信号处理的基础动作 1、放大与衰减 2、滤波 3、调制…

Grails(Groovy)框架抛出NoHandlerFoundException而不是返回404 Not Found

本文记录在基于Spring(Boot)框架&#xff08;使用Java语言&#xff09;和Grails框架&#xff08;使用Groovy语言&#xff09;下&#xff0c;开发Controller接口&#xff0c;对不存在的URL请求&#xff0c;接口返回404 not found&#xff0c;而不是抛出NoHandlerFoundException异…

muduo中事件循环线程池的理解

事件循环线程池的理解前置知识reactor模型thread::start()方法的理解创建线程池子线程被唤醒的几种情况子线程被主线程唤醒新连接到来有消息需要发送时&#xff08;多reactor情况时&#xff09;关闭连接时子线程被唤醒执行任务在 上一篇中&#xff0c;我们讨论了关于简单的线程…

AI智能体“上下文工程”实践:来自 Manus 项目的经验总结

转载&#xff1a;https://manus.im/blog/Context-Engineering-for-AI-Agents-Lessons-from-Building-Manus 在启动 Manus (manus.im/app) 项目之初&#xff0c;我的团队面临一个关键抉择&#xff1a;究竟是基于开源基础模型训练一个端到端的智能体模型&#xff0c;还是在前沿大…

day19 链表

定义链式存储的线性表头文件相关定义 typedef int datatype;//定义数据域类型 typedef struct Node {union{int len; //头结点数据域datatype data; //普通节点数据域};struct Node *next; //节点指针域 }Node,*Node_ptr;链表的函数 注意事项 1.创建节点时&#xff0c;需要初…

【第三节】Class与Style绑定

文章目录Class与Style绑定绑定HTML Class对象语法数组语法绑定内联样式对象语法数组语法自动添加前缀Class与Style绑定 数据绑定一个常见需求是操作元素的 class 列表和它的内联样式,因为它们都是属性&#xff0c;我们可以用 v-bind 处理它们:我们只需要计算出表达式最终的字符…

CMOS知识点 离子注入工艺

知识点8&#xff1a;离子注入是为了将掺杂剂&#xff08;如硼、磷等&#xff09;精确引入硅晶片的近表面区域&#xff0c;以改变其电学性质。工艺过程&#xff1a;电离与加速&#xff1a;掺杂剂原子在离子源中被电离&#xff08;带电&#xff09;&#xff0c;通过高压电场&…

从安装到上手:Ubuntu 22.04 玩转 Containerd 2.1.3 容器运行时

Containerd 是一款支持 OCI 规范的容器运行时&#xff0c;注重容器部署和生命周期管理的简单性、健壮性与可移植性&#xff0c;常被嵌入到 Docker 和 Kubernetes 等系统中。本文将详细介绍在 Ubuntu 22.04 服务器上通过二进制包手动安装 Containerd 的完整步骤&#xff0c;包括…

Hadoop与云原生集成:弹性扩缩容与OSS存储分离架构深度解析

Hadoop与云原生集成的必要性Hadoop在大数据领域的基石地位作为大数据处理领域的奠基性技术&#xff0c;Hadoop自2006年诞生以来已形成包含HDFS、YARN、MapReduce三大核心组件的完整生态体系。根据CSDN技术社区的分析报告&#xff0c;全球超过75%的《财富》500强企业仍在使用Had…

飞算科技:以创新科技引领数字化变革,旗下飞算 JavaAI 成开发利器

作为国家级高新技术企业&#xff0c;飞算科技专注于自主创新&#xff0c;在数字科技领域持续深耕&#xff0c;用前沿技术为各行业客户赋能&#xff0c;助力其实现数字化转型升级的飞跃。​飞算科技凭借深厚的技术积累&#xff0c;将互联网科技、大数据、人工智能等技术与实际应…

多线程Python爬虫:加速大规模学术文献采集

1. 引言 在学术研究过程中&#xff0c;高效获取大量文献数据是许多科研工作者和数据分析师的需求。然而&#xff0c;传统的单线程爬虫在面对大规模数据采集时&#xff0c;往往效率低下&#xff0c;难以满足快速获取数据的要求。因此&#xff0c;利用多线程技术优化Python爬虫&a…

NX717NX720美光固态闪存NX724NX728

美光NX系列固态闪存深度解析&#xff1a;技术、性能与市场洞察一、技术架构与核心创新美光NX系列固态闪存&#xff08;包括NX717、NX720、NX724、NX728&#xff09;的技术根基源于其先进的G9 NAND架构。该架构通过5纳米制程工艺和多层3D堆叠技术&#xff0c;实现了存储单元密度…

浅谈——C++和C#差异

虽然这个话题看着似乎有些关公战秦琼的味道&#xff0c;但是作为游戏开发者&#xff0c;C和C#一定是绕不开的两门语言。不过虽然说是比较二者差异&#xff0c;因为我学习的过程主要是先学C&#xff0c;所以我先基于C的认知&#xff0c;再来聊聊C#之中的不同。&#xff08;为什么…

rocky9-zabbix简单部署

目录 一、准备 1、&#xff08;rocky9&#xff09; 2、配置数据库 二、配置文件 1、导入初始架构与数据 2、配置相关文件 三、启动服务 1、浏览器访问 2、解决乱码问题 ​编辑 四、监控 ① 添加主机 1、修改配置文件 2、启动服务 3、网页添加 ②添加监控模块 1…

tabBar设置底部菜单选项、iconfont图标(图片)库、模拟京东app的底部导航栏

欢迎来到我的UniApp技术专栏&#xff01;&#x1f389; 在这里&#xff0c;我将与大家分享关于UniApp开发的实用技巧、最佳实践和项目经验。 专栏特色&#xff1a; &#x1f4f1; 跨平台开发一站式解决方案 &#x1f680; 从入门到精通的完整学习路径 &#x1f4a1; 实战项目经…

7.22总结mstp,vrrp

一、MSTP技术&#xfeff;&#xfeff;MSTI和MSTI域根&#xfeff;&#xfeff;MSTP中的端口角色3. MSTP工作原理 MSTP 计算方法• CST/IST的计算和RSTP类似 • MSTI的计算仅限于区域内 • MSTI计算参数包含在IST BPDU中&#xff0c;和IST的计 算同步完成&#xfeff;&#xfe…

【电脑】网卡的基础知识

网卡&#xff08;Network Interface Card, NIC&#xff09;是计算机中用于连接网络的关键组件之一&#xff0c;它负责管理和发送数据包到互联网或其他局域网设备。下面是一些关于网卡的详细知识&#xff1a;网卡的基本结构MAC地址&#xff1a;每个网卡都有一个唯一的物理地址&a…