SMIA-S2
Chapitre 3: les tableaux en langage C
Cours donné par:
Pr. Nawal Alioua Année universitaire:
2018-2019
Plan
1 Introduction
2 Les tableaux à une dimension en C
3 Les tableaux à deux dimensions en C
Plan
1 Introduction
2 Les tableaux à une dimension en C
3 Les tableaux à deux dimensions en C
Introduction
Supposons qu'on a besoin de 25 valeurs (ex: des notes pour calculer une moyenne).
Une solution consiste à déclarer 25 variables réelles, appelées par exemple n1,n2,n3,. . . ,n25 et la variable moyenne réelle:
moyenne = (n1+n2+n3+. . . +n25) / 25
En programmation (exemple langage C): la machine va réserver 25*8=200 octetspour stocker les valeurs des 25 variables et 25*4=100 octetspour leurs adresses.
La programmation nous permet de rassembler toutes ces variablesen une seule et de les manipuler comme étant: "la note numéro 1 ", " la note numéro 2 ",. . ., " la note numéro 25 ".
Un ensemble de valeurs portant ainsi le même nom de variable et repérées par un nombre, s'appelle un tableau, et le nombre qui sert à repérer chaque valeur s'appelleun indice.
Introduction
Supposons qu'on a besoin de 25 valeurs (ex: des notes pour calculer une moyenne).
Une solution consiste à déclarer 25 variables réelles, appelées par exemple n1,n2,n3,. . . ,n25 et la variable moyenne réelle:
moyenne = (n1+n2+n3+. . . +n25) / 25
En programmation (exemple langage C): la machine va réserver 25*8=200 octetspour stocker les valeurs des 25 variables et 25*4=100 octetspour leurs adresses.
La programmation nous permet de rassembler toutes ces variablesen une seule et de les manipuler comme étant: "la note numéro 1 ", " la note numéro 2 ",. . ., " la note numéro 25 ".
Un ensemble de valeurs portant ainsi le même nom de variable et repérées par un nombre, s'appelle un tableau, et le nombre qui sert à repérer chaque valeur s'appelleun indice.
Introduction
Supposons qu'on a besoin de 25 valeurs (ex: des notes pour calculer une moyenne).
Une solution consiste à déclarer 25 variables réelles, appelées par exemple n1,n2,n3,. . . ,n25 et la variable moyenne réelle:
moyenne = (n1+n2+n3+. . . +n25) / 25
En programmation (exemple langage C): la machine va réserver 25*8=200 octetspour stocker les valeurs des 25 variables et 25*4=100 octetspour leurs adresses.
La programmation nous permet de rassembler toutes ces variablesen une seule et de les manipuler comme étant: "la note numéro 1 ", " la note numéro 2 ",. . ., " la note numéro 25 ".
Un ensemble de valeurs portant ainsi le même nom de variable et repérées par un nombre, s'appelle un tableau, et le nombre qui sert à repérer chaque valeur s'appelleun indice.
Introduction
Supposons qu'on a besoin de 25 valeurs (ex: des notes pour calculer une moyenne).
Une solution consiste à déclarer 25 variables réelles, appelées par exemple n1,n2,n3,. . . ,n25 et la variable moyenne réelle:
moyenne = (n1+n2+n3+. . . +n25) / 25
En programmation (exemple langage C): la machine va réserver 25*8=200 octetspour stocker les valeurs des 25 variables et 25*4=100 octetspour leurs adresses.
La programmation nous permet de rassembler toutes ces variablesen une seule et de les manipuler comme étant: "la note numéro 1 ", " la note numéro 2 ",. . ., " la note numéro 25 ".
Un ensemble de valeurs portant ainsi le même nom de variable et repérées par un nombre, s'appelle un tableau, et le nombre qui sert à repérer chaque valeur s'appelleun indice.
Introduction
Supposons qu'on a besoin de 25 valeurs (ex: des notes pour calculer une moyenne).
Une solution consiste à déclarer 25 variables réelles, appelées par exemple n1,n2,n3,. . . ,n25 et la variable moyenne réelle:
moyenne = (n1+n2+n3+. . . +n25) / 25
En programmation (exemple langage C): la machine va réserver 25*8=200 octetspour stocker les valeurs des 25 variables et 25*4=100 octetspour leurs adresses.
La programmation nous permet de rassembler toutes ces variablesen une seule et de les manipuler comme étant: "la note numéro 1 ", " la note numéro 2 ",. . ., " la note numéro 25 ".
Un ensemble de valeurs portant ainsi le même nom de variable et repérées par un nombre, s'appelle un tableau, et le nombre qui sert à repérer chaque valeur s'appelleun indice.
C'est quoi un tableau?
Les tableaux entrent dans la catégorie destypes structurés, à l'inverse des types déjà vus (entiers, ottants,...) qui appartiennent la catégorie destypes élémentaires (ou simple).
Type structuré = se compose de plusieurs composants de types élémentaires ou structurés.
Tableau:
- Ensemble d'éléments demême typedésignés par un identicateur unique - Chaque élément estlocalisé par un indice, précisant sa position au sein de
l'ensemble.
- Occupe unespace contigu en mémoire: les éléments d'un tableau se suivent dans la mémoire.
Un tableau de taille n est une structure simple constituée de n emplacements consécutifs en mémoire.
Il est donc possible d'accéder à un élément d'un tableau en temps constant si on connait sa position (ouindice).
C'est quoi un tableau?
Les tableaux entrent dans la catégorie destypes structurés, à l'inverse des types déjà vus (entiers, ottants,...) qui appartiennent la catégorie destypes élémentaires (ou simple).
Type structuré = se compose de plusieurs composants de types élémentaires ou structurés.
Tableau:
- Ensemble d'éléments demême typedésignés par un identicateur unique - Chaque élément estlocalisé par un indice, précisant sa position au sein de
l'ensemble.
- Occupe unespace contigu en mémoire: les éléments d'un tableau se suivent dans la mémoire.
Un tableau de taille n est une structure simple constituée de n emplacements consécutifs en mémoire.
Il est donc possible d'accéder à un élément d'un tableau en temps constant si on connait sa position (ouindice).
C'est quoi un tableau?
Les tableaux entrent dans la catégorie destypes structurés, à l'inverse des types déjà vus (entiers, ottants,...) qui appartiennent la catégorie destypes élémentaires (ou simple).
Type structuré = se compose de plusieurs composants de types élémentaires ou structurés.
Tableau:
- Ensemble d'éléments demême typedésignés par un identicateur unique - Chaque élément estlocalisé par un indice, précisant sa position au sein de
l'ensemble.
- Occupe unespace contigu en mémoire: les éléments d'un tableau se suivent dans la mémoire.
Un tableau de taille n est une structure simple constituée de n emplacements consécutifs en mémoire.
Il est donc possible d'accéder à un élément d'un tableau en temps constant si on connait sa position (ouindice).
C'est quoi un tableau?
Les tableaux entrent dans la catégorie destypes structurés, à l'inverse des types déjà vus (entiers, ottants,...) qui appartiennent la catégorie destypes élémentaires (ou simple).
Type structuré = se compose de plusieurs composants de types élémentaires ou structurés.
Tableau:
- Ensemble d'éléments demême typedésignés par un identicateur unique - Chaque élément estlocalisé par un indice, précisant sa position au sein de
l'ensemble.
- Occupe unespace contigu en mémoire: les éléments d'un tableau se suivent dans la mémoire.
Un tableau de taille n est une structure simple constituée de n emplacements consécutifs en mémoire.
Il est donc possible d'accéder à un élément d'un tableau en temps constant si on connait sa position (ouindice).
C'est quoi un tableau?
Les tableaux entrent dans la catégorie destypes structurés, à l'inverse des types déjà vus (entiers, ottants,...) qui appartiennent la catégorie destypes élémentaires (ou simple).
Type structuré = se compose de plusieurs composants de types élémentaires ou structurés.
Tableau:
- Ensemble d'éléments demême typedésignés par un identicateur unique - Chaque élément estlocalisé par un indice, précisant sa position au sein de
l'ensemble.
- Occupe unespace contigu en mémoire: les éléments d'un tableau se suivent dans la mémoire.
Un tableau de taille n est une structure simple constituée de n emplacements consécutifs en mémoire.
Il est donc possible d'accéder à un élément d'un tableau en temps constant si on connait sa position (ouindice).
C'est quoi un tableau?
Les tableaux entrent dans la catégorie destypes structurés, à l'inverse des types déjà vus (entiers, ottants,...) qui appartiennent la catégorie destypes élémentaires (ou simple).
Type structuré = se compose de plusieurs composants de types élémentaires ou structurés.
Tableau:
- Ensemble d'éléments demême typedésignés par un identicateur unique - Chaque élément estlocalisé par un indice, précisant sa position au sein de
l'ensemble.
- Occupe unespace contigu en mémoire: les éléments d'un tableau se suivent dans la mémoire.
Un tableau de taille n est une structure simple constituée de n emplacements consécutifs en mémoire.
Il est donc possible d'accéder à un élément d'un tableau en temps constant si on connait sa position (ouindice).
C'est quoi un tableau?
Les tableaux entrent dans la catégorie destypes structurés, à l'inverse des types déjà vus (entiers, ottants,...) qui appartiennent la catégorie destypes élémentaires (ou simple).
Type structuré = se compose de plusieurs composants de types élémentaires ou structurés.
Tableau:
- Ensemble d'éléments demême typedésignés par un identicateur unique - Chaque élément estlocalisé par un indice, précisant sa position au sein de
l'ensemble.
- Occupe unespace contigu en mémoire: les éléments d'un tableau se suivent dans la mémoire.
Un tableau de taille n est une structure simple constituée de n emplacements consécutifs en mémoire.
Il est donc possible d'accéder à un élément d'un tableau en temps constant si on connait sa position (ouindice).
C'est quoi un tableau?
Les tableaux entrent dans la catégorie destypes structurés, à l'inverse des types déjà vus (entiers, ottants,...) qui appartiennent la catégorie destypes élémentaires (ou simple).
Type structuré = se compose de plusieurs composants de types élémentaires ou structurés.
Tableau:
- Ensemble d'éléments demême typedésignés par un identicateur unique - Chaque élément estlocalisé par un indice, précisant sa position au sein de
l'ensemble.
- Occupe unespace contigu en mémoire: les éléments d'un tableau se suivent dans la mémoire.
Un tableau de taille n est une structure simple constituée de n emplacements consécutifs en mémoire.
Il est donc possible d'accéder à un élément d'un tableau en temps constant si on connait sa position (ouindice).
Remarques
Il n'est pas possible de modierla taille d'un tableau, ce qui est gênant pour un certain nombre d'algorithmes.
On dit que cette structure est statique. Le nombre d'éléments qu'elle contient ne peut pas varier.
Caractéristiques de l'indice: sert à parcourir les éléments d'un tableau et peut être exprimé comme un nombre ou une variable. La valeur d'un indice doit toujours:
être égale au moins à 0 . Tab[2] est le troisième élément du tableau Tab ! être un nombre entier. L'élément Tab[3.14] n'existe jamais.
être inférieure ou égale au nombre d'éléments du tableau moins 1. Si le tableau Tab a été déclaré comme ayant 10 éléments, Tab[10] déclenchera automatiquement une erreur.
Ne pas confondre l'indice i d'un élément d'un tableau avec le contenu de cet élément Tab[i].
Remarques
Il n'est pas possible de modierla taille d'un tableau, ce qui est gênant pour un certain nombre d'algorithmes.
On dit que cette structure est statique. Le nombre d'éléments qu'elle contient ne peut pas varier.
Caractéristiques de l'indice: sert à parcourir les éléments d'un tableau et peut être exprimé comme un nombre ou une variable. La valeur d'un indice doit toujours:
être égale au moins à 0 . Tab[2] est le troisième élément du tableau Tab ! être un nombre entier. L'élément Tab[3.14] n'existe jamais.
être inférieure ou égale au nombre d'éléments du tableau moins 1. Si le tableau Tab a été déclaré comme ayant 10 éléments, Tab[10] déclenchera automatiquement une erreur.
Ne pas confondre l'indice i d'un élément d'un tableau avec le contenu de cet élément Tab[i].
Remarques
Il n'est pas possible de modierla taille d'un tableau, ce qui est gênant pour un certain nombre d'algorithmes.
On dit que cette structure est statique. Le nombre d'éléments qu'elle contient ne peut pas varier.
Caractéristiques de l'indice: sert à parcourir les éléments d'un tableau et peut être exprimé comme un nombre ou une variable. La valeur d'un indice doit toujours:
être égale au moins à 0 . Tab[2] est le troisième élément du tableau Tab ! être un nombre entier. L'élément Tab[3.14] n'existe jamais.
être inférieure ou égale au nombre d'éléments du tableau moins 1. Si le tableau Tab a été déclaré comme ayant 10 éléments, Tab[10] déclenchera automatiquement une erreur.
Ne pas confondre l'indice i d'un élément d'un tableau avec le contenu de cet élément Tab[i].
Remarques
Il n'est pas possible de modierla taille d'un tableau, ce qui est gênant pour un certain nombre d'algorithmes.
On dit que cette structure est statique. Le nombre d'éléments qu'elle contient ne peut pas varier.
Caractéristiques de l'indice: sert à parcourir les éléments d'un tableau et peut être exprimé comme un nombre ou une variable. La valeur d'un indice doit toujours:
être égale au moins à 0 . Tab[2] est le troisième élément du tableau Tab ! être un nombre entier. L'élément Tab[3.14] n'existe jamais.
être inférieure ou égale au nombre d'éléments du tableau moins 1. Si le tableau Tab a été déclaré comme ayant 10 éléments, Tab[10] déclenchera automatiquement une erreur.
Ne pas confondre l'indice i d'un élément d'un tableau avec le contenu de cet élément Tab[i].
Remarques
Il n'est pas possible de modierla taille d'un tableau, ce qui est gênant pour un certain nombre d'algorithmes.
On dit que cette structure est statique. Le nombre d'éléments qu'elle contient ne peut pas varier.
Caractéristiques de l'indice: sert à parcourir les éléments d'un tableau et peut être exprimé comme un nombre ou une variable. La valeur d'un indice doit toujours:
être égale au moins à 0 . Tab[2] est le troisième élément du tableau Tab ! être un nombre entier. L'élément Tab[3.14] n'existe jamais.
être inférieure ou égale au nombre d'éléments du tableau moins 1. Si le tableau Tab a été déclaré comme ayant 10 éléments, Tab[10] déclenchera automatiquement une erreur.
Ne pas confondre l'indice i d'un élément d'un tableau avec le contenu de cet élément Tab[i].
Remarques
Il n'est pas possible de modierla taille d'un tableau, ce qui est gênant pour un certain nombre d'algorithmes.
On dit que cette structure est statique. Le nombre d'éléments qu'elle contient ne peut pas varier.
Caractéristiques de l'indice: sert à parcourir les éléments d'un tableau et peut être exprimé comme un nombre ou une variable. La valeur d'un indice doit toujours:
être égale au moins à 0 . Tab[2] est le troisième élément du tableau Tab ! être un nombre entier. L'élément Tab[3.14] n'existe jamais.
être inférieure ou égale au nombre d'éléments du tableau moins 1. Si le tableau Tab a été déclaré comme ayant 10 éléments, Tab[10] déclenchera automatiquement une erreur.
Ne pas confondre l'indice i d'un élément d'un tableau avec le contenu de cet élément Tab[i].
Remarques
Il n'est pas possible de modierla taille d'un tableau, ce qui est gênant pour un certain nombre d'algorithmes.
On dit que cette structure est statique. Le nombre d'éléments qu'elle contient ne peut pas varier.
Caractéristiques de l'indice: sert à parcourir les éléments d'un tableau et peut être exprimé comme un nombre ou une variable. La valeur d'un indice doit toujours:
être égale au moins à 0 . Tab[2] est le troisième élément du tableau Tab ! être un nombre entier. L'élément Tab[3.14] n'existe jamais.
être inférieure ou égale au nombre d'éléments du tableau moins 1. Si le tableau Tab a été déclaré comme ayant 10 éléments, Tab[10] déclenchera automatiquement une erreur.
Ne pas confondre l'indice i d'un élément d'un tableau avec le contenu de cet élément Tab[i].
Plan
1 Introduction
2 Les tableaux à une dimension en C
3 Les tableaux à deux dimensions en C
Déclaration d'un tableau 1-D
Déclaration d'un tableau: type nomTableau[taille];
En langage C, la première positiond'un tableau porte l'indice 0.
t[i] joue le même rôle qu'une variable scalaire du type du tableau.
La notation &t[i] désigne l'adresse de l'élément t[i] de même que &x désignait l'adresse de la variable x.
Exemple : - oat t[5];
- Réserve l'emplacement pour 5 éléments de type oat.
- t[3] désigne le quatrième élément du tableau - Les indices valides pour ce tableau sont de 0 à 4 - On peut écrire: t[4] = 15.3f;out[4]++;ou- -t[i];
Déclaration d'un tableau 1-D
Déclaration d'un tableau: type nomTableau[taille];
En langage C, la première positiond'un tableau porte l'indice 0.
t[i] joue le même rôle qu'une variable scalaire du type du tableau.
La notation &t[i] désigne l'adresse de l'élément t[i] de même que &x désignait l'adresse de la variable x.
Exemple : - oat t[5];
- Réserve l'emplacement pour 5 éléments de type oat.
- t[3] désigne le quatrième élément du tableau - Les indices valides pour ce tableau sont de 0 à 4 - On peut écrire: t[4] = 15.3f;out[4]++;ou- -t[i];
Déclaration d'un tableau 1-D
Déclaration d'un tableau: type nomTableau[taille];
En langage C, la première positiond'un tableau porte l'indice 0.
t[i] joue le même rôle qu'une variable scalaire du type du tableau.
La notation &t[i] désigne l'adresse de l'élément t[i] de même que &x désignait l'adresse de la variable x.
Exemple : - oat t[5];
- Réserve l'emplacement pour 5 éléments de type oat.
- t[3] désigne le quatrième élément du tableau - Les indices valides pour ce tableau sont de 0 à 4 - On peut écrire: t[4] = 15.3f;out[4]++;ou- -t[i];
Déclaration d'un tableau 1-D
Déclaration d'un tableau: type nomTableau[taille];
En langage C, la première positiond'un tableau porte l'indice 0.
t[i] joue le même rôle qu'une variable scalaire du type du tableau.
La notation &t[i] désigne l'adresse de l'élément t[i] de même que &x désignait l'adresse de la variable x.
Exemple : - oat t[5];
- Réserve l'emplacement pour 5 éléments de type oat.
- t[3] désigne le quatrième élément du tableau - Les indices valides pour ce tableau sont de 0 à 4 - On peut écrire: t[4] = 15.3f;out[4]++;ou- -t[i];
Déclaration d'un tableau 1-D
Déclaration d'un tableau: type nomTableau[taille];
En langage C, la première positiond'un tableau porte l'indice 0.
t[i] joue le même rôle qu'une variable scalaire du type du tableau.
La notation &t[i] désigne l'adresse de l'élément t[i] de même que &x désignait l'adresse de la variable x.
Exemple : - oat t[5];
- Réserve l'emplacement pour 5 éléments de type oat.
- t[3] désigne le quatrième élément du tableau - Les indices valides pour ce tableau sont de 0 à 4 - On peut écrire: t[4] = 15.3f;out[4]++;ou- -t[i];
Règles pour la déclaration d'un tableau 1-D
Un indice peut prendre la forme d'une expression arithmétiquede type entier ou caractère, en tenant compte des règles de conversion systématique des caractères.
Exemple: (Avec n, p, ketj sont de typeint,c1et c2 de typechar.) - t[n+6]
- t[3*p-7*j+n%k]
- t[c1-2]
- t[c2+c1]
Règles pour la déclaration d'un tableau 1-D
Dans les anciennes versions du langage C, la dimension (taille) d'un tableau ne pouvait pas être une variable.
On ne pouvait utiliser qu'une constante symbolique dénie par la directive#dene, une expression avec cette constante, ou un nombre.
Dans les versions plus récentes, le compilateur accepte l'utilisation d'une variable comme taille du tableau. Il faut être attentif à ce type d'erreur dépendant de la version utilisée
Initialisation d'un tableau 1-D
La déclaration combinée à l'initialisation int tab[5] = { 10, 20, 5, 0, 3 } ;
place les valeurs indiquées dans chacun des cinq éléments du tableau, dans cet ordre.
Il est possible de ne pas mentionner la dimensiondu tableau, elle sera déterminée par le compilateur par le nombre de valeurs énumérées dans l'initialisation.
La déclaration précédente est équivalente à : int tab[] = { 10, 20, 5, 0, 3 } ;
Initialisation d'un tableau 1-D
La déclaration combinée à l'initialisation int tab[5] = { 10, 20, 5, 0, 3 } ;
place les valeurs indiquées dans chacun des cinq éléments du tableau, dans cet ordre.
Il est possible de ne pas mentionner la dimensiondu tableau, elle sera déterminée par le compilateur par le nombre de valeurs énumérées dans l'initialisation.
La déclaration précédente est équivalente à : int tab[] = { 10, 20, 5, 0, 3 } ;
Initialisation d'un tableau 1-D
La déclaration combinée à l'initialisation int tab[5] = { 10, 20, 5, 0, 3 } ;
place les valeurs indiquées dans chacun des cinq éléments du tableau, dans cet ordre.
Il est possible de ne pas mentionner la dimensiondu tableau, elle sera déterminée par le compilateur par le nombre de valeurs énumérées dans l'initialisation.
La déclaration précédente est équivalente à : int tab[] = { 10, 20, 5, 0, 3 } ;
Exemple: nombre d'étudiants ayant dépassé la moyenne de la classe
Ecrire un programme C qui saisit les notes des étudiants de la classe (de 20 étudiants) et qui calcule le nombre d'étudiants ayant dépassé la moyenne de la classe.
Exemple: nombre d'étudiants ayant dépassé la moyenne de la classe Ecrire un programme C qui saisit les notes des étudiants de la classe (de 20 étudiants) et qui calcule le nombre d'étudiants ayant dépassé la moyenne de la classe.
Plan
1 Introduction
2 Les tableaux à une dimension en C
3 Les tableaux à deux dimensions en C
Tableau à deux dimensions
Pour représenter les matrices dans un ordinateur, un tableau ne sut pas:
En eet,chaque ligne de la matrice est un tableau,
une matrice n*k peut par exemple être représentée par n tableaux de k éléments chacun.
Mais cette représentation sera dicile à gérer,
En programmation, on a la possibilité de déclarer des tableaux dans lesquels les valeurs sont repérées par deux indices, appeléstableaux à deux dimensions
C'est la solution adoptée pour la représentation des matrices
Tableau à deux dimensions
Pour représenter les matrices dans un ordinateur, un tableau ne sut pas:
En eet,chaque ligne de la matrice est un tableau,
une matrice n*k peut par exemple être représentée par n tableaux de k éléments chacun.
Mais cette représentation sera dicile à gérer,
En programmation, on a la possibilité de déclarer des tableaux dans lesquels les valeurs sont repérées par deux indices, appeléstableaux à deux dimensions
C'est la solution adoptée pour la représentation des matrices
Tableau à deux dimensions
Pour représenter les matrices dans un ordinateur, un tableau ne sut pas:
En eet,chaque ligne de la matrice est un tableau,
une matrice n*k peut par exemple être représentée par n tableaux de k éléments chacun.
Mais cette représentation sera dicile à gérer,
En programmation, on a la possibilité de déclarer des tableaux dans lesquels les valeurs sont repérées par deux indices, appeléstableaux à deux dimensions
C'est la solution adoptée pour la représentation des matrices
Tableau à deux dimensions
Pour représenter les matrices dans un ordinateur, un tableau ne sut pas:
En eet,chaque ligne de la matrice est un tableau,
une matrice n*k peut par exemple être représentée par n tableaux de k éléments chacun.
Mais cette représentation sera dicile à gérer,
En programmation, on a la possibilité de déclarer des tableaux dans lesquels les valeurs sont repérées par deux indices, appeléstableaux à deux dimensions
C'est la solution adoptée pour la représentation des matrices
Tableau à deux dimensions
Pour représenter les matrices dans un ordinateur, un tableau ne sut pas:
En eet,chaque ligne de la matrice est un tableau,
une matrice n*k peut par exemple être représentée par n tableaux de k éléments chacun.
Mais cette représentation sera dicile à gérer,
En programmation, on a la possibilité de déclarer des tableaux dans lesquels les valeurs sont repérées par deux indices, appeléstableaux à deux dimensions
C'est la solution adoptée pour la représentation des matrices
Tableau à deux dimensions
Pour représenter les matrices dans un ordinateur, un tableau ne sut pas:
En eet,chaque ligne de la matrice est un tableau,
une matrice n*k peut par exemple être représentée par n tableaux de k éléments chacun.
Mais cette représentation sera dicile à gérer,
En programmation, on a la possibilité de déclarer des tableaux dans lesquels les valeurs sont repérées par deux indices, appeléstableaux à deux dimensions
C'est la solution adoptée pour la représentation des matrices
Déclaration d'un tableau 2-D
Déclaration d'un tableau 2-D:type nomTab[nbLig][nbCol];
Exemple: double t[4][2];déclare un tableau de 4 lignes et 2 colonnes.
Un élément quelconque d'un tableau 2-D est repéré par deux indices On rappelle que les indices des tableaux en langage C commence par 0
t[3][1] désigne l'élément de la quatrième ligne et deuxième colonne Les écritures suivantessont valides: t[i][j]ou t[i-3][i+j]
Les écriturest[3] ou t[j] présentent destableaux 1-D
Déclaration d'un tableau 2-D
Déclaration d'un tableau 2-D:type nomTab[nbLig][nbCol];
Exemple: double t[4][2];déclare un tableau de 4 lignes et 2 colonnes.
Un élément quelconque d'un tableau 2-D est repéré par deux indices On rappelle que les indices des tableaux en langage C commence par 0
t[3][1] désigne l'élément de la quatrième ligne et deuxième colonne Les écritures suivantessont valides: t[i][j]ou t[i-3][i+j]
Les écriturest[3] ou t[j] présentent destableaux 1-D
Déclaration d'un tableau 2-D
Déclaration d'un tableau 2-D:type nomTab[nbLig][nbCol];
Exemple: double t[4][2];déclare un tableau de 4 lignes et 2 colonnes.
Un élément quelconque d'un tableau 2-D est repéré par deux indices On rappelle que les indices des tableaux en langage C commence par 0
t[3][1] désigne l'élément de la quatrième ligne et deuxième colonne Les écritures suivantessont valides: t[i][j]ou t[i-3][i+j]
Les écriturest[3] ou t[j] présentent destableaux 1-D
Déclaration d'un tableau 2-D
Déclaration d'un tableau 2-D:type nomTab[nbLig][nbCol];
Exemple: double t[4][2];déclare un tableau de 4 lignes et 2 colonnes.
Un élément quelconque d'un tableau 2-D est repéré par deux indices On rappelle que les indices des tableaux en langage C commence par 0
t[3][1] désigne l'élément de la quatrième ligne et deuxième colonne Les écritures suivantessont valides: t[i][j]ou t[i-3][i+j]
Les écriturest[3] ou t[j] présentent destableaux 1-D
Déclaration d'un tableau 2-D
Déclaration d'un tableau 2-D:type nomTab[nbLig][nbCol];
Exemple: double t[4][2];déclare un tableau de 4 lignes et 2 colonnes.
Un élément quelconque d'un tableau 2-D est repéré par deux indices On rappelle que les indices des tableaux en langage C commence par 0
t[3][1] désigne l'élément de la quatrième ligne et deuxième colonne Les écritures suivantessont valides: t[i][j]ou t[i-3][i+j]
Les écriturest[3] ou t[j] présentent destableaux 1-D
Déclaration d'un tableau 2-D
Déclaration d'un tableau 2-D:type nomTab[nbLig][nbCol];
Exemple: double t[4][2];déclare un tableau de 4 lignes et 2 colonnes.
Un élément quelconque d'un tableau 2-D est repéré par deux indices On rappelle que les indices des tableaux en langage C commence par 0
t[3][1] désigne l'élément de la quatrième ligne et deuxième colonne Les écritures suivantessont valides: t[i][j]ou t[i-3][i+j]
Les écriturest[3] ou t[j] présentent destableaux 1-D
Déclaration d'un tableau 2-D
Déclaration d'un tableau 2-D:type nomTab[nbLig][nbCol];
Exemple: double t[4][2];déclare un tableau de 4 lignes et 2 colonnes.
Un élément quelconque d'un tableau 2-D est repéré par deux indices On rappelle que les indices des tableaux en langage C commence par 0
t[3][1] désigne l'élément de la quatrième ligne et deuxième colonne Les écritures suivantessont valides: t[i][j]ou t[i-3][i+j]
Les écriturest[3] ou t[j] présentent destableaux 1-D
Déclaration d'un tableau 2-D
Les éléments d'un tableau 2-D sont rangés suivant l'ordre obtenu en faisantvarier le dernier indice en premier.
Si on considère le tableau int tab[3][2];
ses éléments sont ordonnés comme suit:
tab[0][0]suivi detab[0][1] puistab[1][0]puistab[1][1]puis tab[2][0]et enn
tab[2][1]
Déclaration d'un tableau 2-D
Les éléments d'un tableau 2-D sont rangés suivant l'ordre obtenu en faisantvarier le dernier indice en premier.
Si on considère le tableau int tab[3][2];
ses éléments sont ordonnés comme suit:
tab[0][0]suivi detab[0][1] puistab[1][0]puistab[1][1]puis tab[2][0]et enn
tab[2][1]
Initialisation d'un tableau 2-D
Les deux initialisation suivantes sont équivalentes:
- int tab [3] [4] = { { 1, 2, 3, 4 } , { 5, 6, 7, 8 },{ 9,10,11,12 }; }
- int tab [3] [4] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 } ;
Explication:
- Dans la première forme, on considère que le tableau est formé de3 tableaux de 4 éléments chacun.
- Dans la seconde, on utilise la manière dont les éléments sonteectivement rangés en mémoireet on énumère les valeurs du tableau suivant cet ordre.
Initialisation d'un tableau 2-D
Les deux initialisation suivantes sont équivalentes:
- int tab [3] [4] = { { 1, 2, 3, 4 } , { 5, 6, 7, 8 },{ 9,10,11,12 }; }
- int tab [3] [4] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 } ;
Explication:
- Dans la première forme, on considère que le tableau est formé de3 tableaux de 4 éléments chacun.
- Dans la seconde, on utilise la manière dont les éléments sonteectivement rangés en mémoireet on énumère les valeurs du tableau suivant cet ordre.
Exercice
Écrire un programme qui saisit et ache les éléments d'une matrice n*m
Exercice
Écrire un programme qui saisit et ache les éléments d'une matrice n*m
Exercice
Ecrire un programme qui calcule la somme de deux matrices carrées de taille n composées d'entiers et place le résultat dans une troisième matrice
Conclusion
Dans ce chapitre nous avons vu:
Les tableaux à une dimension Les tableaux à deux dimensions
Dans le chapitre suivant nous allons voir la notion de fonction en langage C
Conclusion
Dans ce chapitre nous avons vu:
Les tableaux à une dimension Les tableaux à deux dimensions
Dans le chapitre suivant nous allons voir la notion de fonction en langage C
Conclusion
Dans ce chapitre nous avons vu:
Les tableaux à une dimension Les tableaux à deux dimensions
Dans le chapitre suivant nous allons voir la notion de fonction en langage C
Conclusion
Dans ce chapitre nous avons vu:
Les tableaux à une dimension Les tableaux à deux dimensions
Dans le chapitre suivant nous allons voir la notion de fonction en langage C