鱼C论坛

 找回密码
 立即注册
查看: 1206|回复: 8

[已解决]然后是几点

[复制链接]
发表于 2020-1-12 21:51:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x

有时候人们用四位数字表示一个时间,比如1106表示11点零6分。现在,你的程序要根据起始时间和流逝的时间计算出终止时间。

读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,即5点30分表示为530。注意,第二个数字表示的分钟数可能超过60,也可能是负数。

输入格式:
输入在一行中给出2个整数,分别是四位数字表示的起始时间、以及流逝的分钟数,其间以空格分隔。注意:在起始时间中,当小时为个位数时,没有前导的零,即5点30分表示为530;流逝的分钟数可能超过60,也可能是负数。

输出格式:
输出四位数字表示的终止时间,当小时为个位数时,没有前导的零。题目保证起始时间和终止时间在同一天内。

输入样例:
1120 110

      
   
输出样例:
1310

下面是我的,答案不完全正确,我也不清楚那个不对,麻烦各位大佬看看
我的思路:都换成10进制的,然后在转化60进制的
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    int hour_1,minute_1,time1,time2;
    scanf("%d %d",&time1,&time2);
    hour_1 = time1 /100;
    minute_1 = time1%100;


    time1 = hour_1*60+minute_1+time2;
    hour_1 = time1/60;
    minute_1 = time1%60;

    printf("%d%d\n",hour_1,minute_1);

    system("pause");
    return 0;

}
最佳答案
2020-1-12 22:03:00
我觉得有几个错误:
1、5点零3分你会表示成53而不是503
2、0点1分前60分钟你会表示成0-59
3、23点5分后60分钟你会表示成245
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-1-12 22:03:00 | 显示全部楼层    本楼为最佳答案   
我觉得有几个错误:
1、5点零3分你会表示成53而不是503
2、0点1分前60分钟你会表示成0-59
3、23点5分后60分钟你会表示成245
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-1-12 22:06:47 | 显示全部楼层
在你的基础上改了下
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    int hour_1,minute_1,time1,time2;
    scanf("%d %d",&time1,&time2);
    hour_1 = time1 /100;
    minute_1 = time1%100;


    time1 = hour_1*60+minute_1+time2;
    while (time1<0){
            time1+=1440;
        }
    time1%=1440;
        
    hour_1 = time1/60;
    minute_1 = time1%60;

    printf("%d%02d\n",hour_1,minute_1);

    system("pause");
    return 0;

}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-1-12 22:09:31 | 显示全部楼层
Croper 发表于 2020-1-12 22:03
我觉得有几个错误:
1、5点零3分你会表示成53而不是503
2、0点1分前60分钟你会表示成0-59

谢谢了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-1-12 22:15:05 | 显示全部楼层
Croper 发表于 2020-1-12 22:03
我觉得有几个错误:
1、5点零3分你会表示成53而不是503
2、0点1分前60分钟你会表示成0-59

我觉得第一个5点零三咋会表示成53呢?输入是啥呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-1-12 22:16:02 | 显示全部楼层
最后的魁拔 发表于 2020-1-12 22:15
我觉得第一个5点零三咋会表示成53呢?输入是啥呢

503 0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-1-12 22:21:42 | 显示全部楼层

5点零三不是应该输入0503吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-1-12 22:22:49 | 显示全部楼层
在起始时间中,当小时为个位数时,没有前导的零,即5点30分表示为530;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-1-12 22:31:22 | 显示全部楼层

老哥,你说的不是5点零3吗??《--》
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-5 07:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表