从键盘输入两个时间点(24小时制),输出两个时间点之间的时间间隔,时间间隔用“小时:分钟:秒”表示。
如:3点5分25秒应表示为–03:05:25.假设两个时间在同一天内,时间先后顺序与输入无关。
Input
输入包括两行。
第一行为时间点1。
第二行为时间点2。
Output
以“小时:分钟:秒”的格式输出时间间隔。
格式参看输入输出。
输入
12:01:12
13:09:43
输出
01:08:31
思路:首先把小时分钟都转化为秒,之后判断大小,大的减去小的,得到的结果再转换为小时分钟秒
#include <stdio.h>
int main(void) {
int h, m, s,sum;
int h1, m1, s1,sum1;
int a, b, c;
int h2;
scanf_s("%d:%d:%d", &a, &b, &c);
scanf_s("%d:%d:%d", &h1, &m1, &s1);
sum = a * 3600 + b * 60 + c; //把小时分钟都转化为秒
sum1 = h1 * 3600 + m1 * 60 + s1; //把小时分钟都转化为秒
if (sum > sum1) {
h2 = sum - sum1;} //判断那个时间大,大的减去小的获得时间差
else
{
h2 = sum1 - sum;}
h = h2 / 3600; //将时间差转换为小时
m = (h2 / 60) % 60; //将时间差转换为分钟 除60获得所有的分钟,再和60取余获得去掉小时后的分钟
s = h2 % 60; //取60的余数为秒
printf("%02d:%02d:%02d", h, m, s);
return 0;
}