Calculer la factorielle récursive d'un nombre entier en C

La factorielle d'un entier naturel n est le produit des nombres entiers inférieurs ou égaux à lui.
n! signifie qu'on commence de n et on décrémente jusqu'à atteindre le nombre 1.

n! = n * (n - 1)! * (n - 2)! * ... * 1

Exemple

Calcul de la factorielle d'un nombre entier

    Algorithme

    Début
    fact, i : entier ;
    fact ß 1 ;
    Pour i de 1 à N faire
    fact ß fact * i ;
    Fin faire

    Fin




    Le programme qui permet de calculer la factorielle d'un nombre entier:

    #include<stdio.h>
    #include<stdlib.h>

    //itérative
    unsigned long fact (unsigned short valeur) {
    int res = 1;
    for(int i = 1; i <= valeur; i++) {
    res *= i;
    }
    return res;
    }

    //récursive
    unsigned long fact_recursive (unsigned short nombre)
    {
    if (nombre == 0)
    return 1;
    else
    return nombre * fact_recursive(nombre - 1);

    }

    int main()
    {
    int nombre;
    printf("Enter un nombre : ");
    scanf("%d",&nombre);
    printf("factoriel de %d : %d\n",nombre,fact (nombre));
    return 0;
    }
    Références:
    La factorielles - wikipédia