7-10 计算火车运行时间 (15 分)
本题要求根据火车的出发时间和达到时间,编写程序计算整个旅途所用的时间。
输入格式:
输入在一行中给出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,c,d,e,f;
scanf("%d %d",a,b);
c=a%100;
d=b%100;
e=a/100;
f=b/100;
if(d>c)
printf("%2f:%2f",f-e,d-c);
else
printf("%2f:%2f",f-e-1,d+60-c);
return 0;
}
错误1:scanf没加&。
错误2:边界取值,当d=c时的情况。
错误3:%02d
正确代码:
#include <stdio.h>
int main()
{
int a,b,c,d,e,f;
scanf("%d %d",&a,&b);
c=a%100;
d=b%100;
e=a/100;
f=b/100;
if(d>=c)
printf("%02d:%02d",f-e,d-c);
else
printf("%02d:%02d",f-e-1,d+60-c);
return 0;
}