POJ3751 时间日期格式转换【日期计算】
生活随笔
收集整理的這篇文章主要介紹了
POJ3751 时间日期格式转换【日期计算】
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
時間日期格式轉(zhuǎn)換
| Time Limit:?1000MS | ? | Memory Limit:?65536K |
| Total Submissions:?8306 | ? | Accepted:?3829 |
Description
世界各地有多種格式來表示日期和時間。對于日期的常用格式,在中國常采用格式的是“年年年年/月月/日日”或?qū)憺橛⒄Z縮略表示的”yyyy/mm/dd”,此次編程大賽的啟動日期“2009/11/07”就是符合這種格式的一個日期,而北美所用的日期格式則為“月月/日日/年年年年”或”mm/dd/yyyy”,如將“2009/11/07”改成這種格式,對應(yīng)的則是”11/07/2009”。對于時間的格式,則常有12小時制和24小時制的表示方法,24小時制用0-24來表示一天中的24小時,而12小時制只采用1-12表示小時,再加上am/pm來表示上午或下午,比如”17:30:00”是采用24小時制來表示時間,而對應(yīng)的12小時制的表示方法是”05:30:00pm”。注意12:00:00pm表示中午12點,而12:00:00am表示凌晨12點。對于給定的采用”yyyy/mm/dd”加24小時制(用短橫線”-”連接)來表示日期和時間的字符串,請編程實現(xiàn)將其轉(zhuǎn)換成”mm/dd/yyyy”加12小時制格式的字符串。
Input
第一行為一個整數(shù)T(T<=10),代表總共需要轉(zhuǎn)換的時間日期字符串的數(shù)目。接下來的總共T行,每行都是一個需要轉(zhuǎn)換的時間日期字符串。
Output
分行輸出轉(zhuǎn)換之后的結(jié)果Sample Input
2 2009/11/07-12:12:12 1970/01/01-00:01:01Sample Output
11/07/2009-12:12:12pm 01/01/1970-12:01:01amHint
注意中午和凌晨時間的特殊表示問題鏈接:POJ3751 時間日期格式轉(zhuǎn)換。
問題簡述:參見上述鏈接。
問題分析:簡單的日期時間轉(zhuǎn)換,有計算,有格式轉(zhuǎn)換。
程序說明:程序需要寫的簡潔規(guī)范。
AC的C語言程序如下:
/* POJ3751 時間日期格式轉(zhuǎn)換 */#include <stdio.h>char *sampm[] = {"am", "pm"};int main(void) {int t;int year, month, day, hour, minute, second;int ampm;scanf("%d", &t);while(t--) {// 輸入日期和時間scanf("%d/%d/%d-%d:%d:%d", &year, &month, &day, &hour, &minute, &second);// 小時換算if(hour >= 12)ampm = 1;elseampm = 0;if(hour == 0)hour = 12;else if(hour > 12)hour -= 12;// 輸出結(jié)果printf("%02d/%02d/%04d-%02d:%02d:%02d%s\n", month, day, year, hour, minute, second, sampm[ampm]);}return 0; }
轉(zhuǎn)載于:https://www.cnblogs.com/tigerisland/p/7564628.html
總結(jié)
以上是生活随笔為你收集整理的POJ3751 时间日期格式转换【日期计算】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CSS 特殊性、继承与层叠
- 下一篇: 稍微成型点的用WEBSOCKET实现的实