Tableau multi-dimensionnel (Array 3D) à C Programming Language


C permet tableau de deux ou plusieurs dimensions. Un réseau à deux dimensions (2D) est un tableau de tableaux. A (3D) tableau à trois dimensions est un tableau de tableaux.

Dans la programmation C un tableau peut avoir deux, trois, voire dix ou plusieurs dimensions. La taille maximale d'un programme de C peut avoir dépend de quel compilateur est utilisé.




Plus de dimensions dans un tableau signifie plus de données seront conservées, mais cela signifie également une plus grande difficulté à gérer et à comprendre le tableau.

Comment déclarer un tableau multidimensionnel dans C

Un tableau multidimensionnel est déclarée en utilisant la syntaxe suivante:

array_name taper [d1] [d2] [d3] [d4] ......... [dn];

Où chaque est une taille, et dn est la taille de la finale.

Exemples:

  1. table de int [5] [5] [20];
  2. flotteur arr [5] [6] [5] [6] [5];

Dans l'Exemple 1:

  • int indique que ce est le type de tableau entier.
  • table est le nom de notre matrice 3D.
  • Notre gamme peut contenir 500 éléments de type entier. Ce nombre est obtenu en multipliant la valeur de chaque dimension. Dans ce cas: 5x5x20 = 500.

Dans l'exemple 2:

  • Array arr est un ensemble de cinq dimensions.
  • 4500 peut contenir des éléments points (flottant 5x6x5x6x5 = 4500).

Vous pouvez voir le pouvoir de déclarer un tableau sur les variables? Quand il se agit de posséder plusieurs valeurs dans la programmation C, nous avons besoin de déclarer plus d'une variable. Mais un seul tableau peut contenir des milliers de valeurs.

Remarque: Pour des raisons de simplicité, ce tutoriel ne traite que tableau 3D. Une fois que vous comprenez la logique de la façon dont la matrice 3D, alors vous pouvez gérer tableau 4D et plus.

Explication d'un tableau 3D

Jetons un coup d'oeil de plus près à une matrice 3D. Une matrice 3D est essentiellement un tableau de tableaux: est un tableau ou d'une collection de tableaux 2D, et un tableau 2D est un tableau de tableau 1D.

Il peut sembler un peu de confusion, mais ne vous inquiétez pas. Comme vous pratiquez travailler avec des tableaux multidimensionnels, vous commencez à comprendre la logique.

Le tableau ci-dessous peut vous aider à comprendre:

L'initialisation d'un tableau 3D en C

Comme toute autre variable ou un tableau, une matrice 3D peut être initialisé à la compilation. Par défaut, dans C, une matrice 3D contient des valeurs initialisées "junk", ne se applique pas à l'utilisation prévue.

Nous voyons un exemple complet de comment initialiser une matrice 3D:

Syntaxe:

#include #include void main () { int i, j, k; int arr [3] [3] [3] = { { {11, 12, 13}, {14, 15, 16}, {17, 18, 19} }, { {21, 22, 23}, {24, 25, 26}, {27, 28, 29} }, { {31, 32, 33}, {34, 35, 36}, {37, 38, 39} }, }; clrscr (); printf ("Elements ::: ::: 3D tableau \ n \ n"); for (i = 0; i <3; i ++) { for (j = 0; j <3; j ++) { for (k = 0; k <3; k ++) { printf ("% d \ t", arr [i] [j] [k]); } printf ("\ n"); } printf ("\ n"); } getch (); }

Imprimer:

Dans le code ci-dessus nous avons déclaré un tableau d'entiers multidimensionnelle appelée "arr" qui peut contenir 3x3x3 (ou 27) éléments.

On initialise aussi le tableau avec des valeurs entières multidimensionnels.


Comme je l'ai déjà dit, une matrice 3D est un tableau 2D de tableaux. Je ai divisé éléments conséquence pour une meilleure compréhension. En regardant l'exemple de code ci-dessus C,

  • Dans les lignes 9-13, 14-18, 19-23 et, chaque bloc est un tableau 2D.
  • Collectivement, lignes 2-24 font une matrice 3D.

Pour appeler les valeurs de la matrice, imaginez la matrice 3D ci-dessus comme un ensemble de tables. Chaque support de cluster est une table imbriquée avec des rangées et des colonnes. Pour accéder ou stocker des articles dans une matrice 3D est nécessaire de connaître son numéro de table, numéro de ligne, et le numéro de colonne.

Un exemple: Vous devez vous connecter en valeur de 25 3D matrice ci-dessus. Ensuite, vérifiez le tableau: dans ce cas, 25 est dans le tableau 1 (rappelez-vous: des tables, des lignes, des colonnes sont comptés à partir de 0, de sorte que le deuxième tableau est le tableau 1). Une fois que vous trouverez le numéro de la table maintenant voir quelle rangée de la table a une valeur, puis vérifier le numéro de colonne. Ensuite, appliquer la logique ci-dessus, 25 situé dans le tableau 1, ligne 1, colonne 1, puis l'adresse est arr [1] [1] [1]. Imprimer cette adresse et vous recevrez la sortie: 25.

La syntaxe conceptuelle d'un tableau 3D en C

La syntaxe de matrice 3D conceptuel est la suivante:

data_type array_name [table] [suite] [colonne];

Si vous souhaitez stocker les valeurs dans ne importe quel point de la matrice 3D avant le numéro de la table, puis le numéro de ligne, et enfin le numéro de colonne.

Quelques exemples hypothétiques:

arr [0] [1] [2] = 32;
arr [1] [0] [1] = 49;

stocker des valeurs dans un fonctionnement continu en utilisant une boucle

Le pointeur de la syntaxe sur attribue des valeurs à une position particulière d'un tableau, mais si vous voulez stocker les valeurs dans plusieurs endroits automataically alors vous devriez utiliser une boucle.

Voici un exemple en utilisant le cycle de la commande:

#include #include void main () { int i, j, k, x = 1; int arr [3] [3] [3]; clrscr (); printf ("Elements ::: ::: 3D tableau \ n \ n"); for (i = 0; i <3; i ++) { for (j = 0; j <3; j ++) { for (k = 0; k <3; k ++) { arr [i] [j] [k] = x; printf ("% d \ t", arr [i] [j] [k]); x ++; } printf ("\ n"); } printf ("\ n"); } getch (); }

Votre avis

(0)
(0)

Commentaires - 0

Sans commentaires

Ajouter un commentaire

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Caractères restants: 3000
captcha