41 votes

Comment imprimer le tableau ?

int main() {  
  int my array[3][3] =
    10, 23, 42,    
    1, 654, 0,  
    40652, 22, 0  
  };  

  printf("%d\n", my_array[3][3]);  
  return 0;
}

Je ne parviens pas à imprimer le tableau. Des idées pourquoi ? Je suis un programmeur débutant, donc tout conseil est apprécié.

35voto

twain249 Points 5292

Ce que vous faites est d'imprimer la valeur dans le tableau au point [3][3], ce qui n'est pas valide pour un tableau 3by3, vous devez boucler sur tous les points et les imprimer.

 for(int i = 0; i < 3; i++) {
    for(int j = 0; j < 3; j++) {
        printf("%d ", array[i][j]);
    }
    printf("\n");
} 

Cela l'imprimera dans le format suivant

 10 23 42
1 654 0
40652 22 0

si vous voulez un formatage plus précis, vous devrez changer la façon dont le printf est formaté.

1voto

user4309687 Points 11

Tu peux essayer ceci :

 #include <stdio.h>

int main() 
{  
  int i,j;
  int my_array[3][3] ={10, 23, 42, 1, 654, 0, 40652, 22, 0};
  for(i = 0; i < 3; i++) 
  {
       for(j = 0; j < 3; j++) 
       {
         printf("%d ", my_array[i][j]);
       }
    printf("\n");
  } 
  return 0;
}

0voto

Brian Rolly Points 25

Si vous souhaitez imprimer le tableau comme vous imprimez une liste 2D en Python :

 #include <stdio.h>

int main()
{
  int i, j;
  int my_array[3][3] = {{10, 23, 42}, {1, 654, 0}, {40652, 22, 0}};
  for(i = 0; i < 3; i++)
  {
      if (i == 0) {
          printf("[");
      }
      printf("[");
      for(j = 0; j < 3; j++)
      {
         printf("%d", my_array[i][j]);
         if (j < 2) {
             printf(", ");
         }
      }
    printf("]");
    if (i == 2) {
        printf("]");
    }

    if (i < 2) {
        printf(", ");
    }
  }
  return 0;
}

La sortie sera :

 [[10, 23, 42], [1, 654, 0], [40652, 22, 0]]

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X