CE code c ne marche pas

Bonjour,
je veut faire un factorielle voici le code que jai mis mais il ne marche pas ,vous pouvez me le corriger svp??

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

int main()
{

int nombre=0,resultat=0;
printf("entre le nombre:\n");
scanf("%d",&nombre);
int i=0;
i=nombre-1;

while(i>0)
{
resultat=nombre*i;
--i;
printf("le factoriel de %d nombre est : %d\n",resultat);
}
}

2 réponses

  1. Modérateur
    Salut,

    Essaye ceci :

    resultat = resultat + nombre*i;

    Car à chaque boucle tu perds ton resultat précédent sinon...
    0
    1. dsl mais sa marhe pas eceque je peut utiliser les pointeurs?
      0
  2. Contributeur
    Bonjour,

    sans dire de bêtises tu pars dans la mauvaise directions, car il faut faire une fonction récursive, ou la fonction s'appelle elle-même. C'est comme ça que se fait la fonction factorielle.

    Cordialement.
    0