nCrを求めるプログラム(C言語)

n個の中からr個を選ぶ組み合わせの数nCrを求める。

\displaystyle {}_n C _r =\frac{n!}{r!(n-r)!}

#include <stdio.h>

long combi(int, int);

int main() {
    int n, r;
    scanf("%d %d", &n, &r);
    printf("%d C %d = %ld\n", n, r, combi(n, r));
}

long combi(int n, int r) {
    if (r == 0) {
        return 1;
    }
    
    return (n - r + 1) * combi(n, r - 1) / r;
}