Édition pédagogique en français
Tableaux en C
Parcourez indices et matrices en conservant des longueurs et des limites explicites.

Un tableau contient des éléments consécutifs de même type. Pour N éléments, les indices vont de 0 à N - 1. C ne vérifie pas automatiquement les indices ; un accès hors de l’objet provoque un comportement indéfini.
Initialisez les données avant leur lecture, utilisez la bonne borne de boucle et vérifiez les saisies. Lorsqu’une fonction reçoit le tableau, donnez-lui aussi le nombre d’éléments valides.
Une matrice C est un tableau de tableaux stocké par lignes. La fonction doit connaître assez de dimensions pour calculer les adresses correctement. Une matrice et un tableau de pointeurs ne sont pas la même représentation.
Là où le tableau complet est disponible, sizeof array / sizeof array[0] donne son nombre d’éléments. Cette formule ne fonctionne pas avec un paramètre pointeur. Testez un seul élément ainsi que les premier et dernier indices autorisés.
Code source
#include <stdio.h>
int main(void) {
int scores[5] = {70, 85, 90, 65, 100};
int grid[2][3] = {
{1, 2, 3},
{4, 5, 6}
};
int n = sizeof(scores) / sizeof(scores[0]);
int sum = 0;
for (int i = 0; i < n; i++) {
sum += scores[i];
}
printf("Elements: %d\n", n);
printf("Sum: %d\n", sum);
printf("Average: %.1f\n", (double)sum / n);
printf("2D array:\n");
for (int r = 0; r < 2; r++) {
for (int c = 0; c < 3; c++) {
printf("%d ", grid[r][c]);
}
printf("\n");
}
return 0;
}
Ouvrir dans le compilateurRésultat attendu
Elements: 5 Sum: 410 Average: 82.0 2D array: 1 2 3 4 5 6
Questions fréquentes
Pourquoi le code et certains résultats restent-ils en anglais ?
Les mots-clés C, les identifiants, les commentaires du programme et les sorties attendues restent ceux de la version originale pour conserver un code exécutable et des tests cohérents. Les explications et les consignes sont traduites.