9158. 2.4.3 求组合数
9158. 2.4.3 求组合数
【问题描述】
根据下列公式可以计算出从n 个不同元素中取出m 个元素(m≤n)的组合数。编写程序,输入2 个正整数m 和n(m≤n),计算并输出组合数。要求定义和调用函数fact(n)计算n!,函数类型为double。
【输入形式】
从键盘输入正整数m和正整数n。
【输入输出样例1】(下划线部分表示输入)
Enter m: 5
Enter n: 12
result=792
【样例说明】
输入提示符后要加一个空格。其中“:”后要加一个且只能一个空格。
输出语句的“=”两边无空格。
英文字母区分大小写。必须严格按样例输入输出。
double fact(int num)
{
int i,count=1;
for(i=1;i<=num;i++)
{
count=count*i;
}
return (count);
}
#include<stdio.h>
int main()
{
int m,n,s,t,a,b,c;
printf("Enter m: ");
scanf("%d",&m);
printf("Enter n: ");
scanf("%d",&n);
if(m>n)
{
t=m;m=n;n=t;
}
a=fact(n);
b=fact(m);
c=fact(n-m);
s=a/(b*c);
printf("result=%d\n",s);
return 0;
}

浙公网安备 33010602011771号