【发布时间】:2018-07-31 12:58:22
【问题描述】:
scanf ("%2d %2d", &shours, &sminutes);
printf ("Enter End Time : ");
scanf ("%2d %2d", &ehours, &eminutes);
printf ("\nTIME DIFFERENCE\n");
tohours = ehours - shours;
printf("Hour(s) : %2d", tohours);
tominute = eminutes - sminutes;
printf("\nMinute(s): %2d ", tominute);
我怎样才能使我的输出像这样?当我尝试运行我的代码时,分钟输出是 -59 而不是 1,而我的小时数是得到输出“1”的人
附:不使用 if else 语句
【问题讨论】:
-
您使用的输入是什么?你期望输出是什么?
-
小时和分钟是痛苦的处理。将您的时间转换为合理的格式(例如,从纪元开始的秒数),以该合理的格式进行计算,然后转换回来。
-
如果归一化为
time_t(自epoch以来的秒数),则有difftime()。