234234234

以24格式的时间差

#include <stdio.h>

// 时间结构体hour, minute, second
typedef struct Time{
int H;
int M;
int S;
} time;


int main() {
time t1, t2;// t1 是开始时间, t2 是截至时间,它们之间的最大时间差为 (24 * 3600  - 1)s 
int p1, p2, d;
scanf("%d:%d:%d", &t1.H, &t1.M, &t1.S);
scanf("%d:%d:%d", &t2.H, &t2.M, &t2.S);

// 以00:00:00 为参考点,分别得到t1, t2的到参考点的时间差

p1 = t1.H * 3600 + t1.M*60 + t1.S;
p2 = t2.H*3600 + t2.M*60 + t2.S;
d = p2 - p1; // 然后相减
if(d < 0)// 小于零, 说明t1 到t2 时,要经过24点。否则不过24点,直接相减可得结果
d = 24 * 3600 + d;
printf("%d", d);
return 1;
}

posted @ 2018-05-29 22:29  你若愿意,我一定去  阅读(134)  评论(0编辑  收藏  举报
23423423423