Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2717 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Suppression d'element dans une liste

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Suppression d'element dans une liste

n°1266473
rabzouze
Posté le 14-12-2005 à 16:13:52  profilanswer
 

Bonjour,
 
Mon soucis est que j'aimerais supprimer le premiere élement de la liste.
Mais je ne sait pas comment tester si je suis sur le premier elemen ou non
 
Ma suppresion fonctionne avec tous les autres élements.
 

Code :
  1. /*********Suppr**********/
  2. void suprAvecLettre(char c,Liste *l)
  3. {
  4. Liste p,prec;
  5. if (estVide(*l)==faux)
  6. {
  7.   prec=Precedent(c,*l);
  8.   if (((prec->suiv==NULL)) || (prec->suiv->c)!=c )
  9.   {
  10.    printf("La lettre tapé n'est pas dans la liste" );
  11.   }
  12.   else
  13.   {
  14.    p=prec->suiv;
  15.    prec->suiv=p->suiv;
  16.    free(p);
  17.   }
  18. }
  19. else
  20. {
  21.  printf("La Liste est vide" );
  22. }
  23. }


 
 
Code maintenant avec teste mais je n'en suis pas sur

Code :
  1. Liste Precedent(char c,Liste l) // renvoi l'element precedent c
  2. {
  3. Liste q,prec;
  4. prec=l;
  5. q=l->suiv;
  6. while(q!=NULL && ((char)q->c) < ((char)c))
  7. {
  8.  prec=q;
  9.  q=q->suiv;
  10. }
  11. return prec;
  12. }
  13. /*********Suppr**********/
  14. void suprAvecLettre(char c,Liste *l)
  15. {
  16. Liste p,prec;
  17. if (estVide(*l)==faux)
  18. {
  19.  if (*l)
  20.  {
  21.   prec=*l;
  22.   prec->suiv=p->suiv;
  23.   free(p);
  24.  }
  25.  else
  26.  {
  27.   prec=Precedent(c,*l);
  28.   if (((prec->suiv==NULL)) || (prec->suiv->c)!=c )
  29.   {
  30.    printf("La lettre tapé n'est pas dans la liste" );
  31.   }
  32.   else
  33.   {
  34.    p=prec->suiv;
  35.    prec->suiv=p->suiv;
  36.    free(p);
  37.   }
  38.  }
  39. }
  40. else
  41. {
  42.  printf("La Liste est vide" );
  43. }
  44. }


mood
Publicité
Posté le 14-12-2005 à 16:13:52  profilanswer
 

n°1266525
godbout
Génial.
Posté le 14-12-2005 à 16:40:01  profilanswer
 

Ben soit il te faut un pointeur de tête, qui bouge jamais, soit il te faut une liste doublement chainées avec des prev pour sauvegarder un pointeur sur le précédent.

n°1266596
rabzouze
Posté le 14-12-2005 à 17:36:29  profilanswer
 

Ecoute je ne travaille pas avec les listes doubles.$
Mon pointeur de tete est p et je voudrai le supprimer etpassé a la suite normalement.
Je fais un procédure void à moins que ce soit mieux que je fasse une function et je renvoi la nouvelle liste

n°1266683
godbout
Génial.
Posté le 14-12-2005 à 19:16:24  profilanswer
 

Bon maintenant c'est toi qui va m'écouter :mad:
Non, bon en fait j'ai rien d'autre à dire [:dawao]

n°1268442
rabzouze
Posté le 16-12-2005 à 14:58:41  profilanswer
 

C bon j'ai reussi

n°1268443
rabzouze
Posté le 16-12-2005 à 14:59:01  profilanswer
 

Merci comme meme

n°1268469
Tamahome
⭐⭐⭐⭐⭐
Posté le 16-12-2005 à 15:27:41  profilanswer
 

rabzouze a écrit :

Merci comme meme


 
 
QUAND MEME bordel ! On écrit QUAND pas comme :fou: :fou: :fou:


---------------
Hobby eien /人◕ ‿‿ ◕人\

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Suppression d'element dans une liste

 

Sujets relatifs
afficher le résultat d'une liste déroulante[xml] récupérer tout le texte d'un élement ?
Excel combobox/Listbox affichage/liste/selection[PHP][Résolu] Problème de suppression...
[C#] Treeview suppression de nodesBibliothèques de gestion de graphes (liste d'adjacence)
liste deroulante , php et urlSuppression auto par rapport à la date du serveur
[Acrobat] créer une liste déroulante avec champs de texteUne liste déroulante peuplée par une requête SQL (Javascript)
Plus de sujets relatifs à : Suppression d'element dans une liste


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR