一、题目
Description:
从键盘输入两个时间点(24小时制),输出两个时间点之间的时间间隔,时间间隔用“小时:分钟:秒”表示。
Input:
输入包括两行。第一行为时间点1。第二行为时间点2。
Output:
以“小时:分钟:秒”的格式输出时间间隔。格式参看输入输出。
Sample Input:
12:01:12 13:09:43
Sample Output:
1:08:31
Hint:
注意:本题并没有说时间点1肯定先于时间点2。
二、代码
#include<stdio.h>
int main()
{
/*24小时制*/
int h1, m1, s1, h2, m2, s2;
scanf("%d:%d:%d", &h1, &m1, &s1);
scanf("%d:%d:%d", &h2, &m2, &s2);
/*直接换成秒来计算*/
int h = 0, m = 0, s = 0;
int T1 = 0, T2 = 0;
T1 = h1 * 3600 + m1 * 60 + s1;
T2 = h2 * 3600 + m2 * 60 + s2;
int T = 0;
if (T1 > T2)
{
T = T1 - T2;
}
else
{
T = T2 - T1;
}
h = T / 3600;
m = (T - h * 3600) / 60;
s = T - h * 3600 - m * 60;
/*输出格式控制*/
if (m < 10 && s>=10)
{
printf("%d:0%d:%d", h, m, s);
}
else if (m >= 10 && s < 10)
{
printf("%d:%d:0%d", h, m, s);
}
else if (m < 10 && s < 10)
{
printf("%d:0%d:0%d", h, m, s);
}
else
printf("%d:%d:%d", h, m, s);
}