为什么我写的计算时间的程序不对,有可以帮我指正吗?

#include <stdio.h>
int main ()
{
int a,b;
int c,d;
int e,f;
e=c-a;
f=d=b;
scanf("%d %d",&a,&b);
scanf("%d %d",&c,&d);
if (f<0){
f=f+60;
e--;
}

printf("%d %d",e,f);
return 0;

}

结果全是零

是不是应该是这样,代码:

#include <stdio.h>
int main()
{
    int a, b;
    int c, d;
    int e, f;

    scanf("%d %d", &a, &b);
    scanf("%d %d", &c, &d);

    e = c - a;
    f = d - b;


    if (f < 0) {
        f = f + 60;
        e--;
    }

    printf("%d %d", e, f);
    return 0;
}

效果:

img


望采纳,谢谢

%d之间不要加空格
否则你输入数字时需要连续输入2个空格

我出现了两个错误
第一,f=b=d;
第二,就是我的条件出现在scanf 之前了,计算机无法读取相关数据