Initialiser un
tableau à 2 dimensions
1) A la
déclaration:
type
nomtab[nbli][nbco]={{vl1c1,vl1c2,vl1c3,...}, ... {vlnc1, vlnc2, ...}};
Chaque ensemble de valeurs correspond à une ligne: {vl1c1,vl1c2,vl1c3,...} c'est
l'initialisation de la ligne 1.
Exemple:
int
tab[3][4]={{3,4,89,7},{1,34,45,7},{4,5,78,12}};
Cette initialisation peut être totale ou partielle mais dans
ce dernier cas pour chaque ligne il n'est pas possible d'initialiser le
nième élément si le précédent n'est
pas initialisé:
int
tab[3][4]={{3,4,89},{1},{4,5,78,12}}; /*l'élément
3 de la ligne 1 et les éléments 1,2,3 de la ligne 2 ne
sont
pas initialisés */
En Conséquence: Si une colonne est entièrement
initialisée alors obligatoirement les colonnes
précédentes sont entièrement initialisées.
Remarque: Comme pour les
tableaux à une dimension cette initialisation ne peut être
faite qu'à la déclaration (pas dans le corps de
l'algoritme avec une affectation =).
2) A l'utilisation (dans le corps de
l'algorithme): en affectant une valeur
à certains
ou tous les éléments par affectation dans une
itération:
nomtableau[x][y] = valeur;
initialise l'élément de la ligne x et de la
colonne y du tableau.
Remarque: l'initilisation
peut être totale ou partielle. Il n'y a pas de contraintes sur
l'initialisation partielle.
Remarque: Comme pour les tableaux à
1 dimension, l'initilisation partielle nécessite de
mémoriser les éléments initialisés de ceux
qu'ils ne le sont pas. Pour une initialisation partielle
consécutive il faut savoir combien de lignes et combien de
colonnes sont initilisées.
suivant
plan