Université Mohammed V de Rabat
Faculté des Sciences
Département d’Informatique
2024/2025
Programmation en Langage C : TD/TP3
(Les tableaux)
Exercice 1
Écrivez un programme C qui lit la dimension N d'un tableau T du type int (dimension
maximale: 50 composantes), saisit les éléments du tableau et détermine la plus grande et la
plus petite valeur saisie ainsi que leur moyenne.
Exercice 2
Écrivez un programme C qui lit la dimension N d'un tableau T du type int (dimension
maximale: 50 composantes), remplit le tableau par des valeurs entrées au clavier. Rangez
ensuite les éléments du tableau T dans l'ordre inverse sans utiliser de tableau d'aide.
Affichez le tableau résultant.
Exercice 3
Ecrivez un programme qui lit la dimension N d'un tableau T du type int (dimension maximale:
50 composantes), remplit le tableau par des valeurs entrées au clavier et affiche le tableau.
Effacez ensuite toutes les occurrences de la valeur 0 dans le tableau T et tassez les
éléments restants. Affichez le tableau résultant.
Exercice 4
Un tableau A de dimension 10 contient 9 valeurs entières triées par ordre croissant; la
10ème valeur est indéfinie. Insérer une valeur VAL donnée au clavier dans le tableau A de
manière à obtenir un tableau de10 valeurs triées.
Exercice 5 (Tri d’un tableau : Tri par insertion)
Problème : Classer les éléments d’un tableau d’entiers A par ordre croissant.
Méthode : on parcourt le tableau à trier du début à la fin. Au moment où on considère le i-
ème élément, les éléments qui le précèdent sont déjà triés. L'objectif d'une étape est
d'insérer le i-ème élément à sa place parmi ceux qui précèdent. Il faut pour cela trouver où
l'élément doit être inséré en le comparant aux autres, puis décaler les éléments afin de
pouvoir effectuer l'insertion.
Ecrivez un programme C qui trie par ordre croissant un tableau d’entiers en utilisant la
méthode du tri par insertion (décrite ci-dessus). Le programme affichera le tableau ainsi trié.
Exercice 6
Ecrivez un programme qui lit les dimensions N et M d’une matrice A de type float (dimension
maximale: 20 lignes et 30 colonnes), puis effectue sa transposition tA.
a) La matrice transposée sera mémorisée dans une deuxième matrice B qui sera affichée.
b) (A est une matrice carrée : M=N) : la transposée sera mémorisée dans A.
Exercice 7
Ecrivez un programme qui effectue la multiplication de deux matrices A et B. Le résultat de la
multiplication sera mémorisé dans une troisième matrice C qui sera ensuite affichée.
Exercice 8
Ecrivez un programme C qui, à partir d’une matrice A (de m lignes et n colonnes) de 0 et 1,
construit une matrice B (de m+1 lignes et n+1 colonnes). La (m+1)ème ligne et la (n+1)ème
colonne de B contiennent des valeurs 0 et 1 de sorte que le nombre de valeurs 1 dans
chaque ligne et chaque colonne (en tenant compte de la ligne et la colonne ajoutée) soit pair.
Le programme affiche A et B.
Exemple :
0 1 0 0 1
0 1 0 0
1 0 0 1 0
1 0 0 1
0 0 1 1 0 0
1 1 0
1 0 1 1 1