简单c语言计算两个时间的时间差

运行错误,求助。

img

下面是代码
#include <stdio.h>
int main ()
{
int a;
int b;
int c;
int e;
int t1,t2,t,t3;
printf("请输入时间(小时 分):");
scanf("%d,%d",&a,&b);
scanf("%d,%d",&c,&e);
t1=(c-a)*60;
t2=e-b;
t=(t1+t2)/60;
t3=(t1+t2)%60;

printf("两者相差%d小时%d分",&t,&t3);
return 0;

}

将红框部分 &取地址符号去掉 即可

img


即:
printf("两者相差%d小时%d分",&t,&t3);
改为:
printf("两者相差%d小时%d分",t,t3);
希望对题主有所帮助,望采纳!!

printf("两者相差%d小时%d分", t, t3); t和t3不能取地址。

输入应该按scanf里的字符格式输入:
5,50 6,50

5,50
6,50

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int h1, m1, h2, m2, h3, m3, t1, t2, dt;
    printf("请输入时间(小时 分): ");
    scanf("%d%d", &h1, &m1);
    scanf("%d%d", &h2, &m2);
    t1 = h1 * 60 + m1;
    t2 = h2 * 60 + m2;
    dt = abs(t1 - t2);
    h3 = dt / 60;
    m3 = dt % 60;
    printf("两者相差%d小时%d分\n", h3, m3);
    return 0;
}