Les Exercices :
- Exercices de manipulations de listes chaînées :
- Gestion d’une pile FIFO .
- Ecrire unr fonction InitialiserPile () qui initialise une liste vide
- Ecrire unr fonction PileVide() qui retourne vrai si la liste est vide
- Ecrire unr fonction Empiler() qui permet d’ajouter un élément en tête de la liste
- Ecrire unr fonction Depiler() qui enlève un élément en tête de la liste
![](../wp-content/uploads/2021/01/exercices-corriges-listes-chainees-langage-c.jpg)
![](../wp-content/uploads/2021/01/exercices-corriges-listes-chainees-langage-c-2.jpg)
Profitez de ce manuel de formation en PDF pour comprendre mieux le Listes chaînées et enrichir votre connaissance.
Commencez à télécharger ce cours adapté pour vous et à apprendre Listes chaînées.
3
}
int main(){
initListe(maListe);
creeListeDecroissante(maListe, 5);
printf( « Liste = [ » );
afficheListe(maListe);
printf( » ] n » );
printf( « Moyenne(Liste) = %.2f n » , moyenne(maListe));
return 0;
}
Exercice 3
#include
#include
#include
typedef struct element * Pelement;
typedef struct liste * Pliste;
typedef struct element{
int x;
Pelement suivant;
}Element;
typedef struct liste{
Pelement premier;
Pelement courant;
Pelement dernier;
}Liste;
Liste l, ll;
Pliste maListe = &l;
Pliste pl= ≪
void initListe(Pliste L){
L = (Pliste) malloc ( sizeof (Liste));
L->premier = (Pelement) malloc ( sizeof (Element));
L->courant = (Peleme nt) malloc ( sizeof (Element));
L->dernier = (Pelement) malloc ( sizeof (Element));
L->premier = NULL;
L->courant = NULL;
L->dernier = NULL;
}
void insereUnElemt(Pliste L, Pelement nouveau){
nouveau ->suivant = L ->premier;
L->premier = nouveau;
if ( L ->dernier ==NULL )
L->dernier = nouveau;
}
void creeListeDecroissante(Pliste L, int n){
printf( « ***** creeListeDecroissante() ***** n » );
int i;
Pelement Pel;
for (i=1; ix = i;
insereUnElemt(L, Pel);
}
}
void afficheListe(Pliste L){
printf( « ** afficheListe() ** n » );
L->courant = L ->premier;