请问为啥这样运行不是实际运算值
#include <stdio.h>
#include <stdlib.h>
int main() //判断时间差
//我想用控制台输入来计算他们的时间差用单精度表示
{ int a,b;
int c,d;
int e;
scanf("%d,%lg",&a,&b); //单精度输入
scanf("%d,%lg",&c,&d);
a=a+b;
c=c+d;
e=a-c;
printf("他们的差%d小时\n",e);
system("pause");
return 0;
}