在多数值中,寻找并转化成共通点,将多种情况考虑成一小段代码。
注意转化数值要点,才能完成简便的编码。
这里输出的时间差关键要点是小时与分钟,有可能计算结果会是负数,而且,若其中有结果是负数,需要单位转化去弥补。
下面是题解
#include<stdio.h>
#include<math.h>
int main(){
int h1,m1,h2,m2,h,m;
printf("Input time one(hour, minute):");
scanf("%d,%d",&h1,&m1);
printf("Input time two(hour, minute):");
scanf("%d,%d",&h2,&m2);
h=((h1-h2)*60+(m1-m2))/60; //化为分钟共同计算,最后在化为小时与分钟
m=((h1-h2)*60+(m1-m2))%60;
printf("%d hour %d minute\n",abs(h),abs(m)); //防止有负数,变为绝对值
return 0;
}