编写一个函数,求从n 个不同的数中取r 个数的所有选择的个数。
Description
输入n 和r 的值; 当用户输入0 0 时,程序结束。
Input
根据公式: C(n,r) = C(n, r-1) * (n - r + 1) / r 输出运算结果 输入数据不满足题意时候,输出"error!"
Output
1
2
3
4
|
5 3
10 20
50 3
0 0
|
Sample Input
1
2
3
4
5
6
7
|
10
error!
19600
|
#include <stdio.h>
int C(int n,int r)
{
int sum;
if(r==0)
return 1;
sum=C(n, r-1) * (n - r + 1) / r ;
return sum;
}
int main()
{
int n,r;
while(scanf("%d %d",&n,&r)!=EOF)
{
if(n==0 && r==0)
{
break;
}
if(n<r || n<0 || r<0)
{
printf("error!\n");
}
else
{
printf("%d\n",C(n,r));
}
}
return 0;
}