从键盘输入一个用24小时制表示的时间,把它转换用12小时制表示的时间并输出例如输入“1530”(15点30分),则输出“3:30PM”
时间: 2024-10-08 07:15:01 浏览: 18
要将24小时制时间转换为12小时制,你需要获取用户的输入,检查小时数是否超过12,然后根据这个条件调整AM/PM标识并处理分钟数。以下是一个简单的C程序来实现这一功能:
```c
#include <stdio.h>
// 将24小时制时间转换为12小时制
char* convert_24_to_12(int hours, int minutes) {
if (hours == 0 && minutes == 0)
return "12:00AM";
// 小于12小时,不需要AM/PM
if (hours <= 12) {
return (hours > 10 ? "%d:" : "0%d:") "%d%P", hours, minutes;
}
// 大于12小时,减去12并添加PM
return (hours - 12 > 9 ? "%d:" : "0%d:") "%d%P", hours - 12, minutes;
}
int main() {
int hours, minutes;
printf("Enter time in 24-hour format (HHMM): ");
scanf("%d %d", &hours, &minutes);
char* time_12 = convert_24_to_12(hours, minutes);
printf("Time in 12-hour format: %s\n", time_12);
return 0;
}
```
在这个程序里,`convert_24_to_12` 函数接收小时数 `hours` 和分钟数 `minutes`,根据它们的值生成12小时制的字符串。如果小时数是0,那么默认为中午12点。
运行这个程序后,请按照提示输入24小时制的时间,例如输入 "1530",程序将会输出 "3:30PM"。
阅读全文