- 描述:编写一个函数,求从n 个不同的数中取r 个数的所有选择的个数。
- 输入: 输入n 和r 的值; 当用户输入0 0 时,程序结束。
- 输出:根据公式: C(n,r) = C(n, r-1) * (n - r + 1) / r 输出运算结果 输入数据不满足题意时候,输出"error!"
- 输入样例:5 3
10 20
50 3
0 0
- 输出样例:10
error!
19600
#include<iostream>
using namespace std;
int main()
{
int C1=1,C2=1;
int i,j,m,n,temp;
while(1)
{
C1=1,C2=1; //每次输入前都要初始化
cin>>m>>n;
temp=n; //保存n值,方便后续的运算
if(m==0&&n==0)
break;
else if(m<n)
cout<<"error!"<<endl;
else
{
for(i=0;i<n;i++)
{
C1=C1*m;
m--;
C2=C2*temp;
temp--;
}
cout<<C1/C2<<endl;
}
}
return 0;
}