解法一:
#include<stdio.h>
int main()
{
int a,b,c,d,e,f;
scanf("%d:%d:%d",&a,&b,&c);
scanf("%d:%d:%d",&d,&e,&f);
if(a>d)
{
if(b>e)
{
if(c>=f) printf("%02d:%02d:%02d",a-d,b-e,c-f);
else printf("%02d:%02d:%02d",a-d,b-e-1,c-f+60);
}
if(b==e)
{
if(c>=f) printf("%02d:%02d:%02d",a-d,0,c-f);
else printf("%02d:%02d:%02d",a-d-1,59,c-f+60);
}
if(b<e)
{
if(c>=f) printf("%02d:%02d:%02d",a-d-1,b-e+60,c-f);
else printf("%02d:%02d:%02d",a-d-1,b-e+60-1,c-f+60);
}
}
if(a==d)
{
if(b>e)
{
if(c>=f) printf("%02d:%02d:%02d",0,b-e,c-f);
else printf("%02d:%02d:%02d",0,b-e-1,c-f+60);
}
if(b==e)
{
if(c>=f) printf("%02d:%02d:%02d",0,0,c-f);
else printf("%02d:%02d:%02d",0,0,f-c);
}
if(b<e)
{
if(c>f) printf("%02d:%02d:%02d",0,e-b-1,f-c+60);
if(c<f) printf("%02d:%02d:%02d",0,e-b,f-c);
if(c==f) printf("%02d:%02d:%02d",0,e-b,0);
}
}
if(a<d)
{
if(b>e)
{
if(c>f) printf("%02d:%02d:%02d",d-a-1,e-b+60-1,f-c+60);
if(c<f) printf("%02d:%02d:%02d",d-a-1,e-b+60,f-c);
if(c==f) printf("%02d:%02d:%02d",d-a-1,e-b+60,0);
}
if(b==e)
{
if(c>f) printf("%02d:%02d:%02d",d-a-1,59,f-c+60);
if(c<f) printf("%02d:%02d:%02d",d-a,0,f-c);
if(c==f) printf("%02d:%02d:%02d",d-a,0,0);
}
if(b<e)
{
if(c>f) printf("%02d:%02d:%02d",d-a,e-b-1,f-c+60);
if(c<f) printf("%02d:%02d:%02d",d-a,e-b,f-c);
if(c==f) printf("%02d:%02d:%02d",d-a,e-b,0);
}
}
return 0;
}
解法二:
#include<stdio.h>
int main()
{
int a,b,c,d,e,f,g,h,t,m;
scanf("%02d:%02d:%02d",&a,&b,&c);
scanf("%02d%02d%02d",&e,&f,&g);
d=a*3600+b*60+c;
h=e*3600+f*60+g;
if(h>d) t=h-d;
else t=d-h;
h=t/3600;
f=t/60%60;
m=t%60;
printf("%02d:%02d:%02d",h,f,m);
return 0;
}