为什么加了if语句后,小时位就会减少啊#include <stdio.h>

我想问一下,为什么加了if语句后,小时位就会减少啊
#include

int main()
{
int hour1, minute1;
int hour2, minute2;

scanf("%d %d", &hour1, &minute1);
scanf("%d %d", &hour2, &minute2);

int ih = hour2 - hour1;
int im = minute2 - minute1;
if ( im <0 ) {
    im = 60 + im;
    ih --;
}

printf("时间差是%d小时%d分。\n", ih, im);

return 0;

}

这就是简单数学题吧,当分钟数想减小于0时,就向小时借1,1小时就是60分钟,所以if中分钟数加60,同时小时数减去1啊