时间计算

计算时间

题目描述

学校和 yyy 的家之间的距离为 s 米,而 yyy 以 v米每分钟的速度匀速走向学校。

在上学的路上,yyy 还要额外花费10分钟的时间进行垃圾分类。

学校要求必须在上午 8:00 到达,请计算在不迟到的前提下,yyy 最晚能什么时候出门。

由于路途遥远,yyy 可能不得不提前一点出发,但是提前的时间不会超过一天。

题解

#include <stdio.h>

int main()
{
    int  s, v;
    scanf_s("%d%d", &s, &v);
    int t = (s % v == 0) ? s / v : s / v + 1;
    t += 10;
    int dif = 1440 - t;//用减法不好计算,转为加法,因为题干说不会提前超过一天,则以前一天的8:00为起步时间
    int hour = (8 + dif / 60) % 24;
    int minute = dif - (dif / 60) * 60;
    printf("%02d:%02d", hour, minute);//在域宽前面加0,则左边多余位补0
//-表示左对齐输出,省略则表示右对齐输出
//.n显示精度,实型,最后一位小数四舍五入;字符串,表示从字符串左侧开始截取的子串字符个数
}

如果已经给出按照24小时格式的时间

退位减法

posted @ 2022-11-17 20:26  5hithin  阅读(288)  评论(0)    收藏  举报