Tableau en c

joey -  
vlmath Messages postés 794 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
je dois initialiser un tableau à double dimensions 5*5, avec les nombres de 1 à 25
je suis bloqué pour l'éxécution de la boucle
merci pour l'aide

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

void main (void)

{

tab[5][5],i,j;
A voir également:

4 réponses

mype Messages postés 2435 Date d'inscription   Statut Membre Dernière intervention   437
 
pour l'execution de la boucle il faut faire deux for pour parcourir toutes les cases et les remplir avec un nombre ça donne ça

int nb=1;
for(i=0;i<5;i++)
for(j=0;j<5;j++){
tab[i][j]=nb;
nb++;}
0
vlmath Messages postés 794 Date d'inscription   Statut Contributeur Dernière intervention   160
 
Salut,

Je crois que t'as pas dû poster tout le code ... ou en tout cas pas la partie intéressante.

La première chose, c'est que tu n'as pas mis de type pour le tableau :
int tab[5][5];

Ensuite, pour remplire n'importe quel tableau à deux dimensions, il te faut deux boucles imbriquées qiu ressemblent à ça :
int i,j,v=1;
// v est une variable qui s'incrémente à chaque changement de case. Elle sera stockée dans tab[i][j]
for( i=0; i<5; i++ )
{
   for( j=0; j<5; j++ )
   {
      tab[i][j] = v;
      v++;
   }
}


En esspérant avoir répondu à ta question.

@bientôt
0
joey
 
merci pour les solutions mais dernière question comment fait-on pour les afficher de cette manière

1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25

voici le code mais il les affiche ds une meme ligne


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

void main (void)

{

int tab[5][5];






int i,j,v=1;

for( i=0; i<5; i++ )
{
for( j=0; j<5; j++ )
{
tab[i][j] = v;
v++;
printf("%d",tab[i][j]);
}

}




}
0
vlmath Messages postés 794 Date d'inscription   Statut Contributeur Dernière intervention   160
 
Il te maque qu'une seule ligne :

for( i=0; i<5; i++ ) 
{ 
   for( j=0; j<5; j++ ) 
   { 
      tab[i][j] = v; 
      v++; 
      printf("%d",tab[i][j]); 
    } 
   printf("\n");
}


@bientôt
0