Comment utiliser les tableaux multidimensionnels dans la programmation de c

Lorsque vous avez besoin pour décrire les éléments de la deuxième ou la troisième dimension, vous pouvez utiliser la programmation C à évoquer en avant un type multidimensionnel de la matrice.

Sommaire

Comment faire un tableau à deux dimensions

Il permet de penser à un tableau à deux dimensions comme une grille de rangées et de colonnes. Un exemple de ce type de réseau est un jeu d'échecs - une grille de 8 lignes et 8 colonnes. Bien que vous pouvez déclarer un tableau unique 64 éléments pour gérer le travail de représenter un échiquier, un tableau à deux dimensions fonctionne mieux. Une telle chose serait déclarée de cette façon:

int échecs [8] [8] -

Les deux crochets définissent deux dimensions différentes de la matrice d'échecs: 8 lignes et 8 colonnes. Le carré situé à la première rangée et la colonne serait référencé comme les échecs [0] [0]. Le dernier carré de cette ligne serait échecs [0] [7], et le dernier carré sur le conseil serait échecs [7] [7].

Dans Tic-Tac-Toe, un simple tic-tac-toe est créé en utilisant une matrice à deux dimensions: 3-en-3. Lignes 9 à 11 remplir la matrice. Ligne 12 ajoute un caractère de X dans le carré central.

Tic-tac-toe

#include int main () {char tictactoe [3] [3] -int x, y - / * matrice initialiser * / for (x = 0 XLT; 3 x ++) pour (y = 0-YLT; 3-y ++ ) tictactoe [x] [y] = '.'- tictactoe [1] [1] =' X '- / * plateau de jeu d'affichage * / puts ("Prêt à jouer Tic-Tac-Toe?")-for(x=0-xlt;3-x++){for(y=0-ylt;3-y++)printf("%ct",tictactoe[x][y])-putchar('n')-}return(0)-}

Les lignes 14 à 21 montrent la matrice. Comme avec sa création, la matrice est affiché en utilisant une boucle imbriquée.

Exercice 1: Créez un nouveau projet en utilisant le code de source indiqué sur Tic-Tac-Toe. Construire et exécuter.




Un type de tableau à deux dimensions qui est assez facile à comprendre est un tableau de chaînes, comme indiqué dans un tableau de chaînes.

Un tableau de chaînes

#include TAILLE #define 3int main () {char président [SIZE] [8] = {"Clinton", "Bush", "Obama"} - int x, index pour (x = 0-x

Ligne 7 dans un tableau de Strings déclare un tableau de caractères à deux dimensions: le président. La première valeur entre crochets est le nombre d'éléments (chaînes) dans le tableau. La deuxième valeur entre crochets est la taille maximale requise pour contenir la plus grande chaîne. La plus grande chaîne est Clinton avec sept lettres, donc huit caractères sont nécessaires, qui comprend le 0 ou null caractère de terminaison.

Parce que tous les éléments de deuxième dimension du tableau doivent avoir le même nombre d'éléments, toutes les chaînes sont stockées en utilisant huit caractères. Yep, que ce gaspillage, mais il est la façon dont le système fonctionne.

image0.jpg

Exercice 2: Tapez le code source à partir d'un tableau de chaînes dans votre build rédacteur et exécuter le programme.

Les états avancent péniblement essentiellement par seconde dimension de la matrice de président, crachant un caractère à la fois.

Exercice 3: Remplacer les lignes 15 à 23 dans un tableau de Strings avec une seule puts () fonction pour afficher la chaîne. Voici comment cette déclaration ressemble:

puts (président [x]) -

Lorsque vous travaillez avec des éléments de chaîne dans un tableau, la chaîne est référencé par la première dimension seulement.

Exercice 4: Modifier votre code source à partir Exercice 3 de telle sorte que trois autres présidents sont ajoutés au tableau: Washington, Adams, Jefferson et.

Comment créer des tableaux en trois dimensions

Tableaux à deux dimensions sont assez communs dans le domaine de la programmation. Multidimensionnelle est fou!

Eh bien, peut-être pas. Trois et tableaux à quatre dimensions ont leur place. Le gros problème est que votre cerveau humain a du mal à suivre avec les différentes dimensions possibles.

La 3D illustre code qui fonctionne avec un réseau tridimensionnel. La déclaration se trouve à la ligne 5. La troisième dimension est tout simplement la troisième série de crochets, qui crée effectivement un jeu de tic-tac-toe carte 3D.

La 3D

#include int main () {char tictactoe [3] [3] [3] -int x, y, z - / * initialiser matrice * / for (x = 0-XLT; 3 x ++) pour (y = 0- YLT; 3-y ++) pour (z = 0-ZLT; 3-z ++) tictactoe [x] [y] [z] = '.'- tictactoe [1] [1] [1] =' X '- / * plateau de jeu d'affichage * / puts ("Prêt à jouer 3D Tic-Tac-Toe?") - pour (z = 0-ZLT; 3-z ++) {printf ("Niveau %dn",z+1)-for(x=0-xlt;3-x++){for(y=0-ylt;3-y++)printf("%ct",tictactoe[x][y][z])-putchar('n')-}}return(0)-}

Lignes 8 à 12 remplir le tableau avec les données, en utilisant des variables X, y, et z que les coordonnées en trois dimensions. Ligne 13 endroits un caractère de X dans le cube central, ce qui vous donne une idée de la façon dont les éléments individuels sont référencés.

Le reste du code à partir de 15 lignes à travers 26 affiche la matrice.

Exercice 5: Créer un programme de tableau à trois dimensions en utilisant le code source à partir de La 3D. Construire et exécuter.

Lamentablement, la sortie est à deux dimensions.


» » » » Comment utiliser les tableaux multidimensionnels dans la programmation de c