题目描述
从键盘输入两个时间点(24 小时制),输出两个时间点之间的时间间隔,时间间隔用 小时:分钟:秒
表示。 如:3 点 5 分 25 秒应表示为 03:05:25
。假设两个时间在同一天内,时间先后顺序与输入无关。
输入
输入包括两行。 第一行为时间点 1。 第二行为时间点 2。
输出
以 小时:分钟:秒
的格式输出时间间隔。 格式参看输入输出。
输入输出样例
样例输入 #1
复制
12:01:12
13:09:43
样例输出 #1
复制
01:08:31
代码如下:
#include <stdio.h>
#include <math.h>
int main(){
int h1,h2,m1,m2,s1,s2; //分别代表小时、分钟、秒
int h3,m3,s3; //输出的小时、分钟、秒
long sum1,sum2,sum3;//总的秒数
scanf("%2d:%2d:%2d",&h1, &m1, &s1);
scanf("%2d:%2d:%2d",&h2, &m2, &s2);
sum1=h1*3600+m1*60+s1;
sum2=h2*3600+m2*60+s2;
sum3=abs(sum1-sum2);
h3=sum3/3600;
m3=sum3%3600/60;
s3=sum3%60;
printf("%02d:%02d:%02d",h3,m3,s3);
return 0;
}
内容补充;
浮点数取绝对值应用 fabs()函数;整型数取绝对值应用abs()函数。
输出时,%02d可以指定输出的字符宽度为2,如果不足2的话就会在左边自动补0,如,4输出为04.