SOS boucle infinie

Résolu/Fermé
znounou Messages postés 8 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 15 février 2015 - 15 févr. 2015 à 20:52
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 16 févr. 2015 à 00:17
Salut,je debute en c et je suis un peu nul en essayant de faire un tableau de multiplication j ai eu une boucle infinie donc je me tourne vers vous car j ai chercher long temps sur le net sans découvrir ou est l erreur , voila le programme et merci d'avance :)

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

int main()
{
  int i,j;
int t[9][9];
for(i=1;i<=9;i++){
                  for(j=1;j<=9;j++){
                                    t[i][j]=i*j;
                                    }
                  
                  }
for(i=1;i<=9;i++){
                  for(j=1;j<=9;j++){
                                    if(j=9){printf("%d\n",t[i][j]);}
                                    if(j=!9){printf(" %d ",t[i][j]);}
                                    }
                  
                  }
  system("PAUSE");	
  return 0;
}

1 réponse

ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 228
Modifié par gravgun le 15/02/2015 à 21:04
'lut, l'erreur classique
if(j=9){printf("%d\n",t[i][j]);}
if(j=!9){printf(" %d ",t[i][j]);}

j=9
attribue 9 à
j
, donc la boucle ne se termine jamais. En C, on teste l'égalité avec l'opérateur
==
.

De même, ce n'est pas
j=!9
mais
j!=9
.

Et ton tableau n'est pas assez grand: il fait 9x9, or tu accèdes jusqu'à l'élément 9,9 ; les tableaux commencent à 0! Pour faire simple, fait le de 10x10.

system("PAUSE");
peut être remplacé par
getchar();
, plus portable.
(portables dans la pratique, @fiddy, avant que tu me tapes dessus)

Et pour finir, ton identation est... exotique. Généralement on décale d'un nombre fixe d'espaces/tabulations lors de l'ouverture/fermeture d'un bloc de code (
{}
), pas de la largeur de la boucle/condition.
from human import idiocy
del idiocy
0
znounou Messages postés 8 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 15 février 2015
15 févr. 2015 à 21:21
oki merci pour tout ces information je suis vraiment nul xD
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
16 févr. 2015 à 00:17
@gravgun,
Je tape sur personne moi :-).
0