求C语言高手做题,感激不尽 visualC++版本
编写main程序调用函数fact求解从m个元素选n个元素的组合数的个数。计算公式是:组合数=m!/(n!.(m-n)!)。要求:m不能小于n,否则应有容错处理。说明:函数...
编写main程序调用函数fact求解从m个元素选n个元
素的组合数的个数。计算公式是:
组合数=m!/(n!.(m-n)!)。要求:m不能小于n,否则
应有容错处理。
说明:函数fact(x)的功能是求x!。 展开
素的组合数的个数。计算公式是:
组合数=m!/(n!.(m-n)!)。要求:m不能小于n,否则
应有容错处理。
说明:函数fact(x)的功能是求x!。 展开
1个回答
展开全部
#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));
}
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));
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询