Vous êtes sur la page 1sur 3

Université Polytechnique de Bingerville

L2 MIAGE
Structures de données Travaux Pratiques Dr MORIE

Enregistrements
TP 1 :
Déclarez un enregistrement tEtudiant avec les informations suivantes : Sexe, taille et Age.
1- Déclarez un étudiant avec les informations suivantes, puis afficher le : Etudiant1 : {"Pierre",
"m", 1.75, 20}
2- Ajouter le champ nom à tEtudiant, puis afficher les informations de Etudiant1 saisies par
l'utilisateurs (ne plus mettre de & dans scanf("%s", Etudiant1.nom) pour la saisie du nom).
3- Déclarer les étudiants suivants : Pierre, Jean, Axelle et Carole. Puis les afficher. Comment
faire pour aller plus vite.
TP 2 :
Dans tEtudiant, nous allons remplacer l'âge par la date de naissance de type {jour, mois, année}.
Déclarer l'enregistrement Date puis l'incorporer dans tEtudiant. Déclarer Etudiant1 puis afficher ses
informations saisies par l'utilisateurs
TP 3 :
Traduisez le TD suivant en langage C.
Dans une boutique en ligne, des produits sont proposés par des vendeurs. La relation est représentée
dans le MCD suivant.

Faites la déclaration du produit suivant : 0001, Smartphone, Samsung, 250 000 TTC, dont le vendeur
est la SARL, ALTO Boutique, sise à Treichville.

Piles
TP 4 :
Faire la déclaration d'une pile P. Ecrire les fonctions de toutes les primitives d'une pile. Puis remplir
la pile P avec des valeurs saisies par l'utilisateurs

TP 5 :
Soit P une pile d’entiers. Écrire les fonctions pour déterminer :
1- Compter tous les éléments
2- Afficher tous les éléments.
3- La valeur maximale et la valeur minimale.
4- Ecrire une procédure permettant d’inverser l’ordre des éléments de P1.

TP 6 :
Ecrire les fonctions suivantes :
1- Afficher le sommet d'une pile sans modifier la pile
2- Retirer une valeur de la pile sans la modifier
3- Faire la somme des valeurs d'une pile

Pointeurs
TP 7 :
Faire la déclaration du pointeur P pointant sur la variable suivante :
Age : Tab[10] de Entier ;
1- Afficher les adresses de P et de Age.
2- Afficher la valeur de P.
Que renvoient les éléments suivants :
1- *p :
2- *Age :
3- &P :
4- &Age[1] :
5- &Age :
6- &Age[1] + 1 :

TP 8 :
Soit le pointeur P suivant :
Var1 : entier
Entier *p
1- Afficher l'espace mémoire occuper par chaque variable
2- Tester les opérations arithmétiques suivantes pour tous les types de variable élémentaire
• P+ 1
• P+2
• P-1
• P-2
TP 9 : tableau dynamique
Déclarer la variable texte de type tableau de caractère sans donner de taille (avec les pointeurs).
Donner la longueur d'un mot entrée par l'utilisateur.
Listes chainées & Arbres

TP 10 :
Faire la déclaration de la liste chainée L de type entier.
Remplir L avec des valeurs saisies par l'utilisateur. La saisie s'arrête lorsqu'il saisi 0.
Ecrire les fonctions suivantes :
1- Afficher les éléments de L
2- Donner la taille de L
3- Compter le nombre d’occurrence d’un élément de L
TP 11 :
Faire la déclaration de l'arbre binaire A.
Soit les valeurs suivantes : [0, 6, -2, -1, 15, 8, 22, -6, -4, 10, -11, 9]. Insérer ces valeurs dans A en
mettant les petites valeurs à gauche et les grandes valeurs à droite (arbre binaire de recherche).
Implémenter les parcours en profondeur de A.
1- Parcours infixé
2- Parcours suffixé
3- Parcours préfixé
Que constatez vous ?

Vous aimerez peut-être aussi