已解决,无需点进来

DarkBoy-avatar

DarkBoy

2020-04-09T10:21:02+00:00

点击展开 ...
本题要求根据火车的出发时间和达到时间,编写程序计算整个旅途所用的时间。

输入格式:
输入在一行中给出2个4位正整数,其间以空格分隔,分别表示火车的出发时间和到达时间。每个时间的格式为2位小时数(00-23)和2位分钟数(00-59),假设出发和到达在同一天内。

输出格式:
在一行输出该旅途所用的时间,格式为“hh:mm”,其中hh为2位小时数、mm为2位分钟数。

输入样例:
1201 1530



输出样例:
03:29
点击展开 ...
#include<stdio.h>
int main()
{
int a,b,m,n,x,y,h,t;
scanf("%4d %4d",&a,&b);
m=a/100,n=a%100;
x=b/100,y=a%100;
if(y>=n)
h=x-m,t=y-n;
if(y<n)
h=x-m-1,t=y+60-n;
if(h>9&&t>9)
printf("%d:%d",h,t);
if(h<10&&t>9)
printf("0%d:%d",h,t);
if(h>9&&t<10)
printf("%d:0%d",h,t);
if(h<10&&t<10)
printf("0%d:0%d",h,t);
return 0;
}
Shinobae-avatar

Shinobae

这不是自问自答?

我又看了一下,我没看懂你写的啥…………
Rouhi-avatar

Rouhi

都转成分钟数做,你这么做太容易在边界上出毛病
Shinobae-avatar

Shinobae

[quote][pid=412494112,21235558,1]Reply[/pid] Post by [uid=38622706]一笑照夜[/uid] (2020-04-11 18:28):

都转成分钟数做,你这么做太容易在边界上出毛病[/quote]附议~~
๔єא๏ɭՇ๏ภ-avatar

๔єא๏ɭՇ๏ภ

答应我

不要用无意义的字母当变量了好吗
AyooMV-avatar

AyooMV

y = a % 100那里应该是b吧
Skits-avatar

Skits

x=b/100,y=a%100;

这一行应该是,y=b%100;

然后你有考虑分钟是60进制吗
DarkBoy-avatar

DarkBoy

[quote][pid=412494792,21235558,1]Reply[/pid] Post by [uid=60482669]crux10086[/uid] (2020-04-11 18:31):

y = a % 100那里应该是b吧[/quote]谢谢提醒,改了,然后正确了
DarkBoy-avatar

DarkBoy

[quote][pid=412495101,21235558,1]Reply[/pid] Post by [uid=41056679]narfnas[/uid] (2020-04-11 18:32):

x=b/100,y=a%100;

这一行应该是,y=b%100;

然后你有考虑分钟是60进制吗[/quote]谢谢提醒,已经改了小错误了,OK了,谢了