7-7 12-24小时制 (15 分) 编写一个程序,要求用户输入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

# include <stdio.h>
int main(void) {
    int n, m;
    scanf("%d:%d", &n, &m);
    if (n >= 12) {
        if (12 == n) printf("%d:%d PM", n, m);
        else {
            n -= 12;
            printf("%d:%d PM", n, m);
        }
    } else {
        printf("%d:%d AM", n, m);
    }

    return 0;
}
  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
### 回答1: 以下是一个Python程序示例,它可以接收用户输入24小时制时间,并将其转换为12小时时间并输出: ```python # 获取用户输入24小时制时间 hour = int(input("请输入24小时制时间小时数(0到23):")) minute = int(input("请输入时间钟数(0到59):")) # 将24小时制转换为12小时 if hour == 0: hour12 = 12 meridian = "凌晨" elif hour < 12: hour12 = hour meridian = "上午" elif hour == 12: hour12 = 12 meridian = "中午" else: hour12 = hour - 12 meridian = "下午" # 输出12小时时间 print("12小时时间为:{}:{}{}".format(hour12, minute, meridian)) ``` 当用户运行程序后,它会要求用户输入24小时制时间小时钟数。程序会将输入小时数转换为12小时时间,并添加“上午”、“下午”或“中午”的后缀,然后将结果输出到屏幕上。 ### 回答2: 为了编写这样一个程序,我们需要使用编程语言来处理时间。在许多编程语言中,都有现成的库可以帮助我们解析和转换时间的数据。下面我将介绍一个实现过程。 首先,我们需要在程序中引入时间库。以Python为例,可以使用以下代码导入时间库: ```python import datetime ``` 接下来,我们要提示用户输入24小时制时间。可以使用以下代码: ```python time_str = input("请输入24小时制时间(格式为HH:MM:SS):") ``` 其中,`input`函数从标准输入中读取一行并返回字符串类型的值,表示用户输入的内容。我们将其赋值给变量`time_str`,后面我们将对这个字符串进行解析,并转换为12小时时间。 接下来,我们需要使用时间库来解析用户输入时间。具体来说,我们可以使用以下代码: ```python time = datetime.datetime.strptime(time_str, "%H:%M:%S") ``` 其中,`strptime`函数是时间库中的一个函数,用于解析字符串类型的时间数据。它接受两个参数,第一个参数是要解析的字符串,第二个参数是用来指定输入字符串的格式。由于用户输入时间格式为“小时:钟:秒钟”,所以我们在这里指定格式为“%H:%M:%S”,其中 `%H` 表示小时24小时制), `%M` 表示钟, `%S` 表示秒钟。 接下来,我们要将24小时制时间转换为12小时时间。具体来说,我们可以使用以下代码: ```python time_str_12 = time.strftime("%I:%M:%S %p") ``` 其中, `strftime` 函数是时间库中的一个函数,用于将时间对象转换为字符串类型的时间数据。它接受一个参数,用来指定输出字符串的格式。这里,我们将格式指定为“%I:%M:%S %p”,其中 `%I` 表示小时12小时), `%M` 表示钟, `%S` 表示秒钟,`%p` 表示上午或下午。 最后,我们打印出12小时时间。具体来说,我们可以使用以下代码: ```python print("12小时时间为:", time_str_12) ``` 完整的代码如下: ```python import datetime time_str = input("请输入24小时制时间(格式为HH:MM:SS):") time = datetime.datetime.strptime(time_str, "%H:%M:%S") time_str_12 = time.strftime("%I:%M:%S %p") print("12小时时间为:", time_str_12) ``` 这样,我们就实现了将24小时制时间转换为12小时时间的功能。用户输入一个时间程序将其解析,并将其转换为12小时时间后展示给用户。程式内部将这个过程视为时间格式的转换,使用了Python中时间库的相关函数实现。 ### 回答3: 编写一个程序要求用户输入24小时制时间,然后显示12小时时间的方法有多种,以下是其中一种方法的代码实现。 1. 首先,我们需要引入Python的时间库,以便利用其中的strftime函数将时间格式化为需要的输出格式。 ```python import time ``` 2. 然后,我们需要从用户那里获取24小时制时间,可以使用input函数获取用户输入,并使用split函数对输入数据进行割。 ```python time_input = input("请输入24小时制时间(HH:MM):").strip() hour, minute = time_input.split(":") ``` 3. 接着,我们需要将小时数转换为整数类型,并计算对应12小时小时数和AM/PM的标记。需要注意的是,当小时数大于等于12时,我们需要将其减去12并标记为PM,否则为AM。 ```python hour = int(hour) if hour >= 12: hour_12 = hour - 12 am_pm = "PM" else: hour_12 = hour am_pm = "AM" ``` 4. 最后,我们将格式化后的时间输出到屏幕上,包括12小时小时数、钟数和AM/PM标记。 ```python time_12_format = "%02d:%02d %s" % (hour_12, int(minute), am_pm) print("12小时时间为:%s" % time_12_format) ``` 完整的代码实现如下: ```python import time time_input = input("请输入24小时制时间(HH:MM):").strip() hour, minute = time_input.split(":") hour = int(hour) if hour >= 12: hour_12 = hour - 12 am_pm = "PM" else: hour_12 = hour am_pm = "AM" time_12_format = "%02d:%02d %s" % (hour_12, int(minute), am_pm) print("12小时时间为:%s" % time_12_format) ``` 以上就是一种Python实现24小时制时间12小时时间的方法,可以在控台上方便地实现时区转换和时间显示

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值