/*
* Copyright (c) 2012, 烟台大学计算机学院
* All rights reserved.
* 作 者:李巧丽
* 完成日期:2012 年 11月 19 日
* 版 本 号:v1.0
*
* 输入描述:输入m和n
* 问题描述:略
* 程序输出:组合数C(m,n)
* 问题分析:略
* 算法设计:略
*/
/*
调用函数输出组合数C(m,n)
*/
#include<iostream>
using namespace std;
int fact(int);
int main()
{
int m,n,c;
cout<<"请输入m和n的值:";
cin>>m>>n;
if(m>=n)
{
c=fact(m)/(fact(n)*fact(m-n));
cout<<"组合数C(m,n)为:"<<c<<endl;
}
else
cout<<"输入错误!"<<endl;
return 0;
}
int fact(int n) //在设计中,函数的功能尽可能单一,fact只管求阶乘
{
int i, f=1;
for(i=1;i<=n;++i)
f=f*i;
return f;
}
运行结果: