求C语言高手做题,感激不尽 visualC++版本

编写main程序调用函数fact求解从m个元素选n个元
素的组合数的个数。计算公式是:
组合数=m!/(n!.(m-n)!)。要求:m不能小于n,否则
应有容错处理。
说明:函数fact(x)的功能是求x!。

#include<stdio.h>

int fact(int x)
{
int i,z=1;
for(i=1;i<=x;i++)
z*=i;
return z;
}
void main()
{
int m,n;
printf("请输入M选N计算的两个数值(空格分隔)\n");
while (1)
{
scanf("%d%d",&m,&n);
if(n<=0||n<=0||n>m)
printf("输入有误!请输入两个正整数,且第一个大于或等于第二个\n");
else
break;
}
printf("%d\n",fact(m)/fact(n)/fact(m-n));
}
温馨提示:答案为网友推荐,仅供参考
相似回答