本文主要是介绍浙江大学PTA C语言-实验9 结构程序设计 7-2 时间换算,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
7-2 时间换算 (15分)
本题要求编写程序,以hh:mm:ss的格式输出某给定时间再过n秒后的时间值(超过23:59:59就从0点开始计时)。
输入格式:
输入在第一行中以hh:mm:ss的格式给出起始时间,第二行给出整秒数n(<60)。
输出格式:
输出在一行中给出hh:mm:ss格式的结果时间。
输入样例:
11:59:40
30
输出样例:
12:00:10
作者
C课程组
单位
浙江大学
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
#include<stdio.h>
#define HOUR_TO_SECOND 3600
#define MINUTE_TO_SECOND 60
struct time{int hour;int minute;int second;
};
int main(void)
{struct time now,after;scanf("%d:%d:%d",&now.hour,&now.minute,&now.second);int n;scanf("%d",&n);int now_sumsecond=now.hour*HOUR_TO_SECOND+now.minute*MINUTE_TO_SECOND+now.second;int after_sumsecond=now_sumsecond+n;after.hour=after_sumsecond/HOUR_TO_SECOND;after.minute=(after_sumsecond-HOUR_TO_SECOND*after.hour)/MINUTE_TO_SECOND;after.second=after_sumsecond%MINUTE_TO_SECOND;if(after.hour>=24)after.hour%=24;if(after.hour>=0&&after.hour<10)printf("0");if(after.minute<10&&after.second<10)printf("%d:0%d:0%d",after.hour,after.minute,after.second);else if(after.minute>=10&&after.second<10)printf("%d:%d:0%d",after.hour,after.minute,after.second);else if(after.minute<10&&after.second>=10)printf("%d:0%d:%d",after.hour,after.minute,after.second);else printf("%d:%d:%d",after.hour,after.minute,after.second);return 0;
}
这篇关于浙江大学PTA C语言-实验9 结构程序设计 7-2 时间换算的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!