Latest web development tutorials

C des tableaux multidimensionnels

C tableau C tableau

C soutien linguistique 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 tout typede données Cvalides,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:

Tableau à deux dimensions dans 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 <stdio.h>
 
int main ()
{
   /* 一个带有 5 行 2 列的数组 */
   int a[5][2] = { {0,0}, {1,2}, {2,4}, {3,6},{4,8}};
   int i, j;
 
   /* 输出数组中每个元素的值 */
   for ( i = 0; i < 5; i++ )
   {
      for ( j = 0; j < 2; j++ )
      {
         printf("a[%d][%d] = %d\n", i,j, a[i][j] );
      }
   }
   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 tableau C tableau