题目描述
编写一个函数,求从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 <stdio.h>
int fun(int n, int r)
{
if (r == 0)
{
return 1;
}
int c = fun(n, r - 1) * (n - r + 1) / r;
return c;
}
int main()
{
int n, r, c;
while (~scanf("%d%d", &n, &r))
{
if (r > n)
{
printf("error!\n");
continue;
}else if (r==0&&n==0)
{
break;
}
c = fun(n, r);
printf("%d\n", c);
}
return 0;
}