偶数求和出现INTEGER_DIVIDE_BY_ZERO错误

问题相关代码,请勿粘贴截图

#include
#include

int main()
{
int m,n,i,t,x,a,b,c,d;
while(scanf("%d%d",&n,&m)!=EOF)
{
a=0;x=0;c=0;d=0;
for(t=1;t<=n;t++)
{
a=a+2;
c=c+a;
x++;
if(x==m)
{
b=c/m;
printf("%d",b);
x=0;c=0;
d++;
}
if(d==n/m&&x==n%m)
{
b=c/(n%m);
printf("%d",b);
}
}
}
return 0;
}

运行结果及报错内容 运行时错误(INTEGER_DIVIDE_BY_ZERO)
我想要达到的结果 为什么会出现这个?哪里出的问题?

b=c/(n%m);
如果n是m的倍数,那么就出现除0错误了