计算两个时间的时间差(C语言)

这篇博客介绍了一个计算两个时间之间差值的方法,特别处理了小时相减可能出现的负数情况。通过将小时转换为分钟进行计算,确保时间差始终为正数。代码示例展示了如何接收用户输入的两个时间,转换为分钟后再相减,最后输出时间差的小时和分钟部分。

首先我们先构思这套题目怎么写,时间差那很简单直接后面时间减去前面不就好了,但是忽略了一点,如果第后面时间分钟是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;
}

评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值