1100: 求组合数(函数专题)

题目描述

马上要举办新生程序设计竞赛了,与以往不同的是,本次比赛以班为单位,为了全面衡量一个班级的整体水平,要求从一个班的m位同学中任选k位同学代表本班参加比赛,问有多少种组合方案。显然,这个组合数是m!/(k!(m-k)!)。要求编写函数fact(),实现求一个数的阶乘功能,在主函数中调用此函数。 
int fact(int n)

{
   //函数返回值为n的阶乘。
}

 

输入

输入两个正整数m,k,k<=m<=12。

#include<stdio.h>
long fact(long n)
 
{ 
    int org=1;
    for(int i=1;i<=n;i++)
        org*=i;
    return org;
} 
int main()
{
    int m,k;
    scanf("%d%d",&m,&k);
    printf("%d\n",fact(m)/(fact(k)*fact(m-k)));
    return 0;
}

 

输出

输出一个整数,即组合方案数。

 

样例输入

5 3

 

样例输出

10
posted @ 2018-09-10 20:29  Binary_tony  阅读(1213)  评论(0编辑  收藏  举报