请教一下这个程序为什么不能输出正确结果
程序代码:#include"stdio.h"
void main()
{
int m,n,i;
printf("input m,n:\n");
scanf("%d%d",&m,&n);
int cmn(int,int);
printf("%d",cmn(m,n));
scanf("%d",&i);
}
int cmn(int x,int y)
{
int fac(int);
int d;
d=fac(x)/(fac(y)*fac(x-y));
return(d);
}
int fac(int k)
{
int j,s;
for(j=1,s=0;j<=k;j++)
s*=j;
return(s);
}
编译显示没有错误
运行就显示 Unhandled exception inCpp1.exe;0xC0000094;Integer Divide by Zero.








