C++从键盘上接收n和m两个正整数,求n中取m的组合数公式:n!(m!*(n-m)!)

如题所述

#include <iostream>
using namespace std;
long com(int,int); //函数声明,c(m,n)=c(m-1,n)*(n-(m-1))/m
int main()
{
int m,n;
cout<<"Please input two numbers m,n(m<n): \n";
cin>>m>>n;
if(m<=n)
cout<<"C(m,n)="<<com(m,n)<<endl;
else
cout<<"Input Error!\n";
return 0;
}
long com(int m,int n)
{
if(m==1)
return n;
else
return com(m-1,n)/m*(n-(m-1));
}

参考资料:http://zhidao.baidu.com/question/92947957.html

温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-04-20
是不是考虑nm的取值范围啊?
第2个回答  2009-04-20
n能取到多少?
相似回答