为啥运行不了正确结果

一个作业题
编程,将从键盘输入的n英寸换算成用英里(mi)、码(yd)、英尺(ft)和英寸(in)的表示形式(1英里=1760码,1码=3英尺,1英尺=12英寸)输出。

用代码块功能插入代码,请勿粘贴截图

#include
#include

int main()
{
int a,b,c,d,e;
scanf("%d",&a);
b=a/63360;
c=(a-63360b)/36;
d=(a-63360
b-36c)/12;
e=a-63360
b-36c-12d;
if((b!=0)&&(c!=0)&&(d!=0)&&(e!=0))
printf("%d mi %d yd %d ft %d in\t",b,c,d,e);
else if((b!=0)&&(c=0)&&(d!=0)&&(e!=0))
printf("%d mi %d ft %d in\t",b,d,e);
else if((b!=0)&&(c!=0)&&(d=0)&&(e!=0))
printf("%d mi %d yd %d in\t",b,c,e);
else if((b!=0)&&(c=0)&&(d!=0)&&(e=0))
printf("%d mi %d yd %d ft\t",b,c,d);
else if((b!=0)&&(c=0)&&(d=0)&&(e!=0))
printf("%d mi %d in\t",b,e);
else if((b!=0)&&(c=0)&&(d!=0)&&(e=0))
printf("%d mi %d ft \t",b,d);
else if((b!=0)&&(c=0)&&(d!=0)&&(e=0))
printf("%d mi \t",b);

else if((b=0)&&(c!=0)&&(d!=0)&&(e!=0))
    printf("%d yd %d ft %d in\t",c,d,e);
else if((b=0)&&(c!=0)&&(d=0)&&(e!=0))
    printf("%d yd %d in\t",c,e);
else if((b=0)&&(c!=0)&&(d!=0)&&(e=0))
    printf("%d yd %d ft\t",c,d);
else if((b=0)&&(c!=0)&&(d=0)&&(e=0))
    printf("%d yd \t",c);


else if((b=0)&&(c=0)&&(d!=0)&&(e!=0))
    printf("%d ft %d in\t",d,e);
else if((b=0)&&(c=0)&&(d!=0)&&(e=0))
    printf("%d ft\t",d);

else printf("%d in",e);
return 0;

}

运行不了正确结果

整数与整数相除的结果仍为整数,
比如 9/2 = 4
2/4 = 0