【问题描述】
为了备战游泳比赛,小张在拼命训练以获取好的名次。某天小张对自己的游泳训练时间进行了计时(计时按24小时制),分别记录了自己当天开始训练的时间a时b分c秒和结束训练的时间d时e分f秒。请计算出小张当天总的游泳训练时间。
【输入形式】
游泳训练的开始时间和结束时间,开始与结束时间之间以空格作为间隔,时间格式均为“时:分:秒”。
【输出形式】
总的训练时间,格式为“时:分:秒”。
【样例输入】
11:20:15 11:25:21
【样例输出】
0:05:06
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a,b,c,d,e,f,g,h,i,j,k,l;
char ch;
cin>>a>>ch>>b>>ch>>c>>d>>ch>>e>>ch>>f;
g=a*3600+b*60+c; //先把时间全部转化为秒
h=d*3600+e*60+f;
i=h-g; //算出时间差,以秒为单位
j=i/3600,k=i/60-j*60,l=i%60; //j表示小时,k表示分钟,l表示秒
cout<<j<<":"; //小时只用一个0,所以不用填充
cout<<setw(2)<<setfill('0')<<k<<":"; //设置宽度2,填充0
cout<<setw(2)<<setfill('0')<<l;
return 0;
}