Langage c (tableau à deux dimensions)

ikerza Messages postés 11 Statut Membre -  
fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonsoir,
svp quelqu'un peut m'aider à ce exercice

Ecrire un programme C qui :Permet de remplir un tableau 5 x 4 par les nombres 0,1,2,3,4.........,19, et d'afficher à l'écran ( déclaration + initialisation)dés la départ

6 réponses

  1. Utilisateur anonyme
     
    je ne sais pas trop ce qui est entendu par "tableau" mais je pense que ce serait "tableau d'entiers", autrement dit une liste.

    Ensuite si c'est à 2 dimension tu peux peut-être faire comme ceci:

    #include<stdio.h> 
    #include<stdlib.h> 
    
    main(){ 
       int tableau[5][4]; 
       int i, j, a=1; 
       for(i=0; i<5; i++){ 
          for(j=0; j<4; j++){ 
             tableau[i][j]=a; 
             a=a+1; 
             printf(" %d ", tableau[i][j]); 
          } 
          printf("\n"); 
       } 
       return 0. 
    } 


    Je débute aussi mais je pense que ça pourrait marcher, seulement je n'arrive pas à compiler =S
    Je tape gcc test.c -o test
    pas de réponse

    comprend pas =S
    J'espère que ça marchera chez toi, tiens moi au courant! =)
    0
  2. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Bonjour,
    Ca ne risque pas de marcher ton programme orinym, tu as un point après return 0 au lieu d'un point virgule ;-))).
    Ensuite, ce n'est pas main() mais int main(void) le prototype de main() sans argument.
    Après, tu aurais pu économiser la variable a, en utilisant à la place i*5+j. C'est pas obligatoire, une variable c'est rien du tout, mais c'est un classique donc je préfère le dire :-))).
    0
  3. Utilisateur anonyme
     
    j'aurais essayé. Pour le point après le return je peux au moins invoquer la faute de frappe :P
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. Utilisateur anonyme
     
    #include<stdio.h>
    #include<stdlib.h>

    int main(){  
       int tableau[5][4];  
       int i, j, a=0;  
       for(i=0; i<5; i++){  
          for(j=0; j<4; j++){  
             tableau[i][j]=a;  
             a=a+1;  
             printf(" %d ", tableau[i][j]);  
          }  
          printf("\n");  
       }  
       return 0;  
    }  


    Voilà après correction, =)
    Ça fonctionne parfaitement chez moi, à ceci près que c'était de 1 à 20 et non de 0 à 19
    J'initialise donc a à 0 ou on peut aussi afficher à la place de "a" "i*5+j-1" pour reprendre l'idée de fiddy.

    Et j'arrive à compiler et exécuter sans problèmes comme ça =)
    0
  6. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Sinon, pour information on peut également économiser une boucle for en faisant varier i de 0 à 19 (sizeof tableau / sizeof **tableau pour plus de portabilité). Et du coup, on met directement i dans le tableau :-).
    0