c语言编程问题,计算出从n 个不同元素中取出m 个元素(m≤n)的组合数。编写程序
根据下列公式可以计算出从n个不同元素中取出m个元素(m≤n)的组合数。编写程序,输入2个正整数m和n(m≤n),计算并输出组合数。要求定义和调...
根据下列公式可以计算出从n 个不同元素中取出m 个元素(m≤n)的组合数。编写程序,输入2 个正整数m 和n(m≤n),计算并输出组合数。要求定义和调用函数fact(n)计算n!,函数类型为double。
公式为:n!/(m!*(m-n)!)
【输入形式】
从键盘输入正整数m和正整数n。
【输入输出样例1】(下划线部分表示输入)
Enter m: 5
Enter n: 12
result=792
下面是我写的... 但错误一大堆,是刚预习的,很多东西还不会用,请高手帮忙改改。或者直接编一个新的也可以
#include<stdio.h>
int main()
{
double x,y,m,n;
printf("Enter m: ");
scanf("%lf",&m);
printf("Enter n: ");
scanf("%lf",&n);
m=fact(m);
n=fact(n);
y=m/n;
x=y/(m+n);
printf("result=%f",x);
return 0;
}
double fact(double s)
{
double i,a;
for (i=1;i<=s;i++)
a=a*i;
return a;
} 展开
公式为:n!/(m!*(m-n)!)
【输入形式】
从键盘输入正整数m和正整数n。
【输入输出样例1】(下划线部分表示输入)
Enter m: 5
Enter n: 12
result=792
下面是我写的... 但错误一大堆,是刚预习的,很多东西还不会用,请高手帮忙改改。或者直接编一个新的也可以
#include<stdio.h>
int main()
{
double x,y,m,n;
printf("Enter m: ");
scanf("%lf",&m);
printf("Enter n: ");
scanf("%lf",&n);
m=fact(m);
n=fact(n);
y=m/n;
x=y/(m+n);
printf("result=%f",x);
return 0;
}
double fact(double s)
{
double i,a;
for (i=1;i<=s;i++)
a=a*i;
return a;
} 展开
1个回答
展开全部
#include<stdio.h>
double fact(double s)
{
double i,a=1;
for (i=1;i<=s;i++)
a=a*i;
return a;
}
int main()
{
double x,y,m,n;
printf("Enter m: ");
scanf("%lf",&m);
printf("Enter n: ");
scanf("%lf",&n);
y=fact(n-m);
m=fact(m);
n=fact(n);
x=n/(y*m);
printf("result=%.0f",x);
return 0;
}
double fact(double s)
{
double i,a=1;
for (i=1;i<=s;i++)
a=a*i;
return a;
}
int main()
{
double x,y,m,n;
printf("Enter m: ");
scanf("%lf",&m);
printf("Enter n: ");
scanf("%lf",&n);
y=fact(n-m);
m=fact(m);
n=fact(n);
x=n/(y*m);
printf("result=%.0f",x);
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询