时制转换C语言

题目描述

输入一个24小时制的时间,输出其12小时制的时间表示。
24小时制的时间表示范围为:00:00 ~ 23:59,没有24点的称呼。
12小时制的时间表示范围为:上午有:12:00 am ~ 12:59 am和01:00 am ~ 11:59 am,下午有:12:00 pm ~ 12:59 pm和01:00 pm ~ 11:59 pm,没有0点的称呼。

输入

输入一个24小时制的时间。格式为“时:分",如12时18分表示为”12:18“。若小时或分钟小于10时,需要带前导0,如8时8分表示为”08:08“,输出格式用“%02d”即可。

输出

与输入相对应,输出其12小时制的时间表示。

样例输入 Copy
20:18
样例输出 Copy
08:18 pm
#include <stdio.h>

int main()
{
    int hour, minute;
    scanf("%02d:%02d", &hour, &minute);

    if (hour >= 0 && hour <= 11) {
        // 上午
        if (hour == 0) {
            hour = 12; // 0时转换为12时
        }
        printf("%02d:%02d am", hour, minute);
    }
    else if (hour == 12) {
        // 中午
        printf("%02d:%02d pm", hour, minute);
    }
    else {
        // 下午
        hour -= 12;
        printf("%02d:%02d pm", hour, minute);
    }

    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值