Tableaux multidimensionnels
Fait partie de la section Fondamentaux du Journey C de Coddy. Leçon 56 sur 63.
Un tableau multidimensionnel est un tableau de tableaux. En C, tu peux créer un tableau à 2 dimensions (le tableau multidimensionnel le plus courant), essentiellement un tableau avec des lignes et des colonnes.
Déclarez un tableau à deux dimensions :
int matrix[3][4];Cela crée un tableau 2D comportant 3 lignes et 4 colonnes.
Vous pouvez initialiser un tableau 2D lors de sa déclaration :
int matrix[3][4] = {
{1, 2, 3, 4}, // Première ligne
{5, 6, 7, 8}, // Deuxième ligne
{9, 10, 11, 12} // Troisième ligne
};Pour accéder aux éléments d’un tableau à 2 dimensions, utilisez deux indices :
int value = matrix[1][2]; // Accède à la ligne 1, colonne 2 (la valeur sera 7)Pour modifier un élément dans un tableau à deux dimensions :
matrix[0][3] = 100; // Modifie l'élément à la ligne 0, colonne 3 à 100Vous pouvez également utiliser des boucles imbriquées pour accéder à tous les éléments d’un tableau 2D :
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n"); // Nouvelle ligne après chaque ligne
}Défi
FacileCréez une fonction appelée printDiagonal qui prend un tableau carré à 2 dimensions (où le nombre de lignes est égal au nombre de colonnes) et affiche les éléments de la diagonale principale (du coin supérieur gauche au coin inférieur droit).
La fonction doit :
- Prendre un tableau d’entiers et sa taille comme paramètres.
- Afficher chaque élément de la diagonale principale (où l’indice de ligne est égal à l’indice de colonne).
- Séparer chaque élément par un espace.
Par exemple, avec le tableau :
1 2 3 4 5 6 7 8 9
La fonction doit afficher : 1 5 9
Essayez vous-même
#include <stdio.h>
// Fonction pour afficher les éléments diagonaux d'une matrice carrée
void printDiagonal(int matrix[][100], int size) {
// Écrivez votre code ici
}
int main() {
int size;
scanf("%d", &size);
int matrix[100][100];
for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
scanf("%d", &matrix[i][j]);
}
}
printDiagonal(matrix, size);
return 0;
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
2Variables
Types de donnéesEntierVirgule flottante - DoubleCaractèresBooléensConstantesBases de printfRègles de nommage des variablesConversion de type - Partie 1Conversion de type - Partie 2Défi récapitulatif3Opérateurs
Opérateurs arithmétiquesOpérateur moduloIncrémentation/DécrémentationOpérateurs d’affectationOpérateurs relationnelsOpérateurs logiques — Partie 1Opérateurs logiques — Partie 2Opérateurs logiques — Partie 3Défi récapitulatifEntraînez-vous par vous-même : Compilateur C en ligne