尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
PTA基础编程题目集 7-7 12-24小时制(C++语言实现)
摘要本文是PTA编程题12-24小时制的题解涵盖题目描述、输入输出格式及C语言实现展示24小时制时间到12小时制时间的转换逻辑与带分隔符的输入处理方法。题目描述编写一个程序要求用户输入24小时制的时间然后显示12小时制的时间。输入格式输入在一行中给出带有中间的:符号半角的冒号的24小时制的时间如12:34表示12点34分。当小时或分钟数小于10时均没有前导的零如5:6表示5点零6分。提示在scanf的格式字符串中加入:让scanf来处理这个冒号。输出格式在一行中输出这个时间对应的12小时制的时间数字部分格式与输入的相同然后跟上空格再跟上表示上午的字符串AM或表示下午的字符串PM。如5:6 PM表示下午5点零6分。注意在英文的习惯中中午12点被认为是下午所以24小时制的12:00就是12小时制的12:0 PM而0点被认为是第二天的时间所以是0:0 AM。输入样例21:11输出样例9:11 PM解题思路核心问题分析本题需要完成两个核心任务一是正确读取带有冒号分隔符的时间输入二是根据24小时制到12小时制的转换规则进行分支判断输出。关键边界点在于0点、12点这两个特殊时间点的处理。算法原理说明带分隔符输入处理使用scanf(%d:%d, hour, minute)可以直接处理冒号分隔格式字符串中的:会自动匹配并跳过输入中的冒号字符。时间转换规则分4种情况hour 0凌晨0点 → 输出0:分钟 AM0 hour 12上午 → 直接输出小时:分钟 AMhour 12中午12点 → 输出12:分钟 PMhour 12下午 → 小时减12输出(hour-12):分钟 PM具体计算步骤读入小时和分钟处理冒号分隔。按上述4种情况进行分支判断。按判断结果输出转换后的时间和AM/PM标识。代码部分实现#includeiostream#includecstdiousingnamespacestd;intmain(){inthour,minute;scanf(%d:%d,hour,minute);if(hour0){cout0:minute AM;}elseif(hour12){couthour:minute AM;}elseif(hour12){cout12:minute PM;}else{couthour-12:minute PM;}return0;}代码流程说明引入头文件引入iostream提供标准输出功能引入cstdio提供scanf函数用于处理带冒号的输入。使用命名空间using namespace std;简化代码。定义变量hour和minute均为int类型分别存储小时和分钟。读取输入scanf(%d:%d, hour, minute);使用格式字符串中的冒号自动匹配并跳过输入中的冒号将小时存入hour、分钟存入minute。分支判断转换情况1hour 0→ 输出0:分钟 AM凌晨零点情况2hour 12且不等于0 → 直接输出小时:分钟 AM上午时段情况3hour 12→ 输出12:分钟 PM中午12点算下午情况4hour 12→ 小时减12后输出(hour-12):分钟 PM下午1点到11点程序结束return 0;表示程序正常终止。代码流程图是否是否是否开始引入iostream和cstdio头文件使用std命名空间定义hour和minute为int变量scanf %d:%d 读取hour和minutehour 0?输出 0:minute AMhour 12?输出 hour:minute AMhour 12?输出 12:minute PM输出 hour-12:minute PMreturn 0结束解题流程图是否理解题目要求24小时制→12小时制转换分析输入格式冒号分隔 无前置零分析输出格式数字同输入 空格 AM/PM梳理特殊边界点0点→0:0 AM12点→12:0 PM确定4种判断分支0 / 1~11 / 12 / 13~23选择scanf %d:%d处理冒号输入编写分支判断逻辑编写完整代码验证边界样例0:0, 12:0, 21:11等输出是否正确?完成检查分支条件与输出格式
RELATED

相关推荐

PTA基础编程题目集 7-6混合类型数据格式化输入(C++语言实现)

PTA基础编程题目集 7-6混合类型数据格式化输入(C++语言实现)

摘要:本文是PTA编程题"混合类型数据格式化输入"的题解,涵盖题目描述、输入输出格式及C语言实现,展示混合类型数据的顺序读入与格式化输出方法。题目描述 本题要求编写程序,顺序读入浮点数1、整数、字符、浮点数2&#x…

📅 2026/9/8 0:21:57
3分钟摆脱重复劳动:这款鼠标键盘录制神器让你效率飙升300%

3分钟摆脱重复劳动:这款鼠标键盘录制神器让你效率飙升300%

3分钟摆脱重复劳动:这款鼠标键盘录制神器让你效率飙升300% 【免费下载链接】KeymouseGo 类似按键精灵的鼠标键盘录制和自动化操作 模拟点击和键入 | automate mouse clicks and keyboard input 项目地址: https://gitcode.com/gh_mirrors/ke/KeymouseGo 你是…

📅 2026/9/17 16:09:27
智能体(Agent)评测方法

智能体(Agent)评测方法

智能体(Agent)评测方法体系 作为面向复杂任务的自主交互系统,Agent评测与传统大模型单点能力评测有本质区别:核心目标是评估模型在动态环境中,通过推理、规划、工具调用、记忆迭代自主完成端到端任务的综合效能&#x…

📅 2026/9/21 5:03:12
MORE NEWS

更多资讯

📰

深度学习新闻分类推荐系统:从TextCNN到个性化推荐

简介:这份基于深度学习的新闻分类推荐系统Python实现源码,是专为课程设计与期末大作业准备的高分项目,下载后无需修改即可运行,适用于需要快速交付完整课题的高校学生。系统涵盖新闻数据预处理、文本分类模型训练、推荐逻辑展示等…

📰

汽车电子底层软件开发:AUTOSAR与CAN总线实战解析

1. 这门“汽车电子底层软件开发就业课”到底在教什么?——不是写个LED闪烁就能上岗的很多人看到“汽车电子底层软件开发就业课”这个标题,第一反应是:不就是嵌入式C语言单片机CAN通信?刷几道LeetCode、调通一个STM32 CAN收发例程&…

📰

Vim基础操作全攻略:保存退出、模式切换与高频命令实战

1. 项目概述1.1 核心需求解析今天聊聊Vim。写这个题目的原因是:几乎每个后端开发者、运维人员、数据工程师某天都会遇到一个场景——深夜加班,服务器登录界面只有黑底白字,编辑器只有vi/vim,你必须在五分钟内完成一次配置修改并保…

📰

Python+CNN车牌识别实战:从数据预处理到模型训练与部署

简介:基于Python与卷积神经网络的车牌识别项目,面向计算机视觉初学者及智能交通开发者,目标是帮助用户掌握从数据预处理、模型构建到实际部署的完整流程。压缩包共25个文件,包含jpg/png图像样本、py训练脚本、md说明文档、dat数据…

📰

AI元人文:从工具使用到思维重构的深度探索

最近半年我一直在琢磨一件事:AI元人文到底是什么?说白了,就是“用元视角重新审视人与AI的关系”,也在“探索AI如何反向逼着我们发现自己的思考边界”。标题里的“元探索”,在我看就是一层套一层的追问——当你用AI解决…

📰

从harness工程到认知工程:Agent系统升级的完整指南

1. 先搞清楚一件事:什么是harness工程1.1 从“给马套缰绳”说起harness这个词,英语本意是“马具、缰绳”,引申到软件工程里就是“给系统套上约束和工具的一整套装置”。在Agent开发圈子里,harness工程指的是围绕大模型Agent构建的…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬