Latest web development tutorials

tableaux multidimensionnels de C

C de la matrice C de la matrice

C ++ supporte des tableaux multidimensionnels. La forme générale d'une déclaration de tableau multidimensionnel est la suivante:

type name[size1][size2]...[sizeN];

Par exemple, l'instruction suivante crée un tableau à trois dimensions de 5104 entiers .:

int threedim[5][10][4];

matrice bidimensionnelle

La forme la plus simple d'un tableau multidimensionnel est un tableau à deux dimensions. Une matrice bidimensionnelle, en substance, est une liste de réseau unidimensionnel. X colonne rangée y a déclaré un tableau à deux dimensions d'entiers dans le formulaire ci-dessous:

type arrayName [ x ][ y ];

Enquoi, le type peut être tous les typesde données valides C++,arrayName est un identifiant valide ++ C.

Un tableau à deux dimensions peut être considéré comme une forme rangée x et y colonne avec. Voici un tableau à deux dimensions contenant 3 lignes et 4:

matrice bidimensionnelle en C ++

Ainsi, chaque élément du tableau est l'utilisation de la forme a [i, j] noms d'éléments pour identifier où un nom est un tableau, i et j est l'identifiant unique dans un indice de chaque élément.

Deux dimensions de l'initialisation du réseau

Les tableaux multidimensionnels peuvent être initialisés entre parenthèses à la valeur spécifiée pour chaque ligne. Voici un tableau de quatre rangées avec 3.

int a[3][4] = {  
 {0, 1, 2, 3} ,   /*  初始化索引号为 0 的行 */
 {4, 5, 6, 7} ,   /*  初始化索引号为 1 的行 */
 {8, 9, 10, 11}   /*  初始化索引号为 2 的行 */
};

A l'intérieur des parenthèses imbriquées sont facultatifs, l'initialisation suivante est équivalente à ce qui précède:

int a[3][4] = {0,1,2,3,4,5,6,7,8,9,10,11};

accès à l'élément de tableau à deux dimensions

Deux dimensions élément de tableau à l'aide de l'indice (ie, l'indice réseau de ligne et l'indice de colonne) à visiter. Par exemple:

int val = a[2][3];

La déclaration ci-dessus obtiendra les quatre premiers éléments du tableau sur la ligne 3. Vous pouvez être vérifié par le schéma ci-dessus. Regardons le programme suivant, nous allons utiliser une boucle imbriquée pour traiter tableau à deux dimensions:

#include <iostream>
using namespace std;
 
int main ()
{
   // 一个带有 5 行 2 列的数组
   int a[5][2] = { {0,0}, {1,2}, {2,4}, {3,6},{4,8}};
 
   // 输出数组中每个元素的值                      
   for ( int i = 0; i < 5; i++ )
      for ( int j = 0; j < 2; j++ )
      {
         cout << "a[" << i << "][" << j << "]: ";
         cout << a[i][j]<< endl;
      }
 
   return 0;
}

Lorsque le code ci-dessus est compilé et exécuté, il produit les résultats suivants:

a[0][0]: 0
a[0][1]: 0
a[1][0]: 1
a[1][1]: 2
a[2][0]: 2
a[2][1]: 4
a[3][0]: 3
a[3][1]: 6
a[4][0]: 4
a[4][1]: 8

Comme décrit ci-dessus, vous pouvez créer des tableaux de toutes dimensions, mais dans des circonstances normales, nous avons créé un tableau de tableaux à une dimension et tableau à deux dimensions.

C de la matrice C de la matrice