Vous êtes sur la page 1sur 1

Université Abdelmalek Essaâdi

Faculté des Sciences et Techniques d’Al-Hoceima


Département de Mathématiques Informatique
Parcours : MIP – S4
Année universitaire : 2019 - 2020
TD du Module M22 : « Structures de données en C »
Série n° 3

Exercice 1 :

On se propose de gérer une classe d’étudiants en utilisant une liste doublement chaînée.
Chaque étudiant est caractérisé par son nom et sa moyenne.
Pour faciliter la représentation de la liste doublement chaînée d’étudiants, on utilise une
deuxième structure qu’on appelle liste contrôlant le premier et dernier élément de la liste.
1) Créer une structure etudiant représentant un élément d’une liste doublement chaînée
d’étudiants.
2) Créer la structure de contrôle de la liste doublement chaînée liste.
3) Définir une fonction liste *creerListe() permettant de créer et de renvoyer une liste
doublement chaînée d’étudiants.
4) Ecrire une fonction void insererDebut(liste *p, char *n, float m) qui permet
d’insérer un nouvel étudiant en tête de la liste.
5) Ecrire une fonction void insererFin(liste *p, char *n, float m) qui permet
d’insérer un nouvel étudiant en queue de la liste.
6) Créer une fonction float moyenne(liste *p) permettant de calculer et de renvoyer la
moyenne de la classe.
7) Définir une fonction void afficherDebut(liste *p) permettant d’afficher la liste
d’étudiants du début vers la fin.
8) Définir une fonction void afficherFin(liste *p) permettant d’afficher la liste
d’étudiants de la fin vers le début.
9) Définir une fonction void supprimerTete(liste *p) permettant de retirer le premier
élément d’une liste d’étudiants.
10) Définir une fonction void supprimerFin(liste *p) permettant de retirer le dernier
élément d’une liste d’étudiants.

Exercice 2 :

Ecrire un programme C permettant de tester les fonctions définies dans l’exercice 1.

Pr. El Mahouti TD-Structures de données en C

Vous aimerez peut-être aussi