首先我们先构思这套题目怎么写,时间差那很简单直接后面时间减去前面不就好了,但是忽略了一点,如果第后面时间分钟是8点10分,前面是7点20分那不就是负数了。
所以要想一个办法,这个办法就是我们先把小时那部分转换为时间,我们可以把前面的进行换算成分钟,然后在进行相减。
1.先定义两个时间(小时,分钟)标识符,在定义三个标识符,t1为前面的时间t2为后面时间,t为时间之差。

2.进行赋值

3.进行转换相减,最后输出。

代码总览

代码
#include <stdio.h>
int main()
{
//定义标识符名字与类型
int minute1, hour1;
int minute2, hour2;
int t1 /*前面的时间*/, t2/*后面时间*/, t/*时间之差*/;
//进行赋值
printf("请输入第一时间:");
scanf("%d:%d", &hour1, &minute1);
printf("请输入第二时间:");
scanf("%d:%d", &hour2, &minute2);
//进行时间转换,把小时转为分钟
t1 = hour1 * 60 + minute1;
t2 = hour2 * 60 + minute2;
if (t1>t2)
t = t1 - t2;
else
t = t2 - t1;
//最后进行转换把小时部分进行转换,整数相除去整,分钟部分进行取余.
printf("时间差为%d时%d分\n", t / 60, t % 60);
return 0;
}
这篇博客介绍了一个计算两个时间之间差值的方法,特别处理了小时相减可能出现的负数情况。通过将小时转换为分钟进行计算,确保时间差始终为正数。代码示例展示了如何接收用户输入的两个时间,转换为分钟后再相减,最后输出时间差的小时和分钟部分。
2万+





