Programme C aide table de multiplication

Bonjour,
Je débute en programmation donc je me lance des petits défis mais là je suis vraiment bloqués.
Je n'arrive pas à faire mon programme qui est :
De taper un nombre est qu'il soit multiplier par tous les chiffres et que cela face ça par exemple :
2 * 0 = 0
2 * 1 = 2
2 * 2 = 4
...
2 * 10 = 20

Voila ce que j'ai fait :

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

int main(int argc, char *argv[])
{
long i = 0,j = 0,resultat = 0;

printf("choisir un nombre : ");
scanf("%ld", &i);

resultat = i * j;

for (j = 0 ; j <= 10 ; j++)
{
printf("%ld * %ld = %ld\n", i, j, resultat);
}

system("PAUSE");
return 0;
}

Mais le probleme c'est qu'a chaque fois que je l'éxecute il me fait ça :

2 * 0 = 0
2 * 1 = 0
2 * 2 = 0
...
2 * 10 = 0

Merci de bien vouloir m'aider.
Configuration: Windows XP
Internet Explorer 7.0

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour hamrod,

    "resultat = i * j; " Que se passe-t-il avec ce code ?
    Tu effectues multiplication qu'une fois : puisque i= ma valeur entrée par scanf et J =0

    for (j = 0 ; j <= 10 ; j++)
    {
    resultat = i * j;
    printf("%ld * %ld = %ld\n", i, j, resultat);
    }

    Dans ce cas j évolue à chaque itération et le calcul est renouvellé après cette itération de j.

    Essayes voir...
    1. Salut, c'est normal, vu que tu n'affecte pas ta variable résultat dans ta boucle. Ceci devrait être écrit

      for(j=0; j<=10; j++)
      {
       printf("%ld * %ld = %ld\n", i,j, i*j);
      }