Les Tableaux en C
Introduction aux Tableaux
Dans le langage C, un tableau représente une collection de valeurs de type identique, disposées dans une structure de longueur fixe. Cette fonctionnalité est très bénéfique pour organiser et gérer des ensembles de données liés au sein de vos programmes.
Déclaration d'un Tableau
Pour déclarer un tableau, vous devez d'abord spécifier le type de données, suivi d'un nom descriptif pour le tableau, puis des crochets contenant la longueur du tableau (c'est-à-dire le nombre d'éléments qu'il peut contenir) :
type nom[longueur];
Par exemple, pour déclarer un tableau d'entiers nommé notes
pouvant contenir 6 éléments :
int notes[6]; // Tableau pour six entiers
Une autre méthode consiste à omettre la longueur et à initialiser le tableau directement avec des valeurs, séparées par des virgules dans des accolades :
int notes[] = {96, 90, 78, 84, 88, 92};
Accéder aux Valeurs avec des Index
Les valeurs dans un tableau sont accessibles par leur index, c'est-à-dire leur position dans la structure. Par exemple :
char voyelles[] = {'a', 'e', 'i', 'o', 'u'};
Il est essentiel de se rappeler qu'en C, les index commencent à 0 :
+-------------------------+
Valeur | 'a' 'e' 'i' 'o' 'u' |
+-------------------------+
Index | 0 1 2 3 4 |
+-------------------------+
Pour accéder à un élément, il suffit d'utiliser le nom du tableau et le numéro de l'index correspondant : - voyelles[0]
renvoie 'a'
- voyelles[1]
renvoie 'e'
- voyelles[2]
renvoie 'i'
- voyelles[3]
renvoie 'o'
- voyelles[4]
renvoie 'u'
Voici un exemple d'accès à une valeur :
char voyelles[] = {'a', 'e', 'i', 'o', 'u'};
putchar(voyelles[3]); // Affiche : o
Exemple Pratique
Prenons un cas pratique où nous souhaitons stocker les mesures de neige (en pouces) des 7 derniers jours :
#include
int main() {
int neige[] = {10, 13, 14, 11, 9, 8, 6};
printf("%d\n", neige[0]); // Affiche la première valeur
neige[2] = 16; // Met à jour un élément
printf("%d\n", neige[2]); // Affiche la valeur mise à jour
return 0;
}
L'exécution de ce code afficherait :
10
16