Erreur d'affichage Matrice

Fermé
pointAbed Messages postés 1 Date d'inscription mardi 6 décembre 2016 Statut Membre Dernière intervention 6 décembre 2016 - Modifié par teutates le 6/12/2016 à 23:09
abdelouafi1 Messages postés 5 Date d'inscription dimanche 5 octobre 2014 Statut Membre Dernière intervention 24 décembre 2016 - 24 déc. 2016 à 14:24
Voilà le code :
#include<stdio.h>
int main()
{int i,j;
int M[3][3];
//lecture Matrice
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("donner l element [%d][%d]",i,j);
scanf("%d",&M[i][j]);
}
}
//Affichage
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("%d",M[i][j]);
}
printf("\n");
}
}

je sais pas pourquoi , après compilation , la matrice lis des indices 00 jusqu'à 31 ?!
Aide moi svp

2 réponses

jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
7 déc. 2016 à 06:31
Je n'ai pas de problème:
#include <stdlib.h>
#include <stdio.h>
const int ROWS = 5, COLS = 2;
int main(int argc, char* argv[])
{
  int i,j;
  int M[ROWS][COLS];
  //lecture Matrice
  for(i = 0; i < ROWS; i++)
    {
      for(j = 0; j < COLS; j++)
	{
	  /*
  printf("donner l element [%d][%d]", i, j);
	  */
	  scanf("%d", &M[i][j]);
	}
    }
  //Affichage
  for(i = 0; i < ROWS; i++)
    {
      for(j = 0; j < COLS; j++)
	{
	  printf("%d ", M[i][j]);
	}
      printf("\n");
    }
}

Compilation et exécution:
johand@bata:~/src/CCM/C$ gcc -Wall -o print_mat print_mat.c
johand@bata:~/src/CCM/C$ echo 1 2 3 4 5 6 7 8 9 10 | ./print_mat
1 2
3 4
5 6
7 8
9 10


0
abdelouafi1 Messages postés 5 Date d'inscription dimanche 5 octobre 2014 Statut Membre Dernière intervention 24 décembre 2016
24 déc. 2016 à 14:24
La réponse à votre question je l'ai mis sur mon site , voici le lien:
https://www.exam-lib.com/threads/les-matrices-%C3%A0-deux-dimensions-en-langage-c-tableaux-2-dimension.369/


si vous avez d'autres questions merci de me contacter
-1