C语言计算时间间隔

问题:从键盘输入两个时间点(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);
}

  

猜你喜欢

转载自www.cnblogs.com/Zhuohome/p/12803934.html