Fonction de construction de triangle de pascal en C

Le programme ci-dessous affiche le triangle de pascal de degré N et le mémorise dans une matrice carrée M de dimension N+1.

Triangle de pascal en C d'une matrice carrée
Triangle de pascal de degré 10

#include<stdio.h>
#include<stdlib.h>
#define N 10
int M[N+1][N+1];//M déclarée globale

unsigned long fact_recursive (unsigned short nombre)
{
    if (nombre == 0)
        return 1;
    else
        return nombre * fact_recursive(nombre - 1);
}

int triangle(int b)
{
    int i,k=1,j;
    for(i=0;i<b;i++)
    {
     for(j=0;j<=i;j++)
     {
      k=fact_recursive(i)/(fact_recursive(j)*fact_recursive(i-j));
      printf("%4d\t",k);
      //mémoriser dans M
      M[i][j]=k;
     }
    printf("\n");
    }
}

int main()
{
      triangle(N);
      return 0;
}

Exécution:

triangle de pascal en langage C++

Références:
Calculer la factorielle en C++
Valeur numérique d'un polynome de degré n
tazzaz.com - triangle de pascal en C