factor(m-n); 关键在这里:m要大于n才能得出结果,否则就会出现0
没有测试环境,在scanf("%d%d",&m,&n); 这句之后,先自己把你获得的m,n 用printf打印出来,确认下你的输入是正确接收了.然后逐行每个计算的结果,估计是你的函数factor返回值为0导致的. 写程序不难,关键学习怎么debug
很抱歉的说,当m>n时,我这儿用你的程序运行是正常的! 当然组合数前提条件就是m>=n哈