#include <stdio.h>
int f(int n){
if(n==1)
return 1;
else
return n*f(n-1);
}
int main()
{
int i,n,m;
float j;
scanf("%d %d",&m,&n);
j=f(m)*1.0/f(n)*f(m-n);
printf("%f",j);
return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
定义一
int f(int num)
{
if (num == 0) //基本情况返回1;
return 1;
else
return num * f(num - 1);
}
void main()
{
int n, m;
scanf_s("%d %d", &n, &m);
double d = f(m)*1.0 / (f(n)*f(n - m));
printf("结果为:%lf", d);
}
个阶乘函数就可以了,相当于三个阶乘计算
#include <stdio.h>
double jiecheng(int m) {
double sum=1;
for(int i=1; i<=m; i++) {
sum=sum*i;
}
return sum;
}
int main() {
int m,n;
double div=0;
printf("请输入两个数:");
scanf("%d %d",&m,&n);
div=jiecheng(m)/(jiecheng(n)*jiecheng(m-n));
printf("div=%.2lf",div);
return 0;
}
代码如上,万望采纳。