問題:從鍵盤輸入兩個時間點(24小時制),輸出兩個時間點之間的時間間隔,時間間隔用“小時:分鍾:秒”表示。輸入包括兩行。第一行為時間點1。第二行為時間點2。以“小時:分鍾:秒”的格式輸出時間間隔。格式參看輸入輸出。本題並沒有說時間點1肯定先於時間點2。
解析:1、可以先把兩個時間都換成秒
2、運用取絕對值函數:fabs。
3、%02d 的意思是如果輸出的整型數不足兩位,左側用0補齊。
代碼:
#include <stdio.h>
#include <math.h>
void main()
{
int a,b,c,d,e,f,s1,s2,s3;
scanf("%d:%d:%d",&a,&b,&c);
getchar();
scanf("%d:%d:%d",&d,&e,&f);
s1=a*3600+b*60+c;
s2=d*3600+e*60+f;
s3=fabs(s1-s2);
a=s3/3600;
b=s3%3600/60;
c=s3%60;
printf("%d:%02d:%02d",a,b,c);
}
