IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

programme de suppression!


Sujet :

C

  1. #1
    Membre averti
    Inscrit en
    Décembre 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 23
    Par défaut programme de suppression!
    Bonjour;
    est ce que vous pouvez m'aider de trouver quelle est le probleme de mon programme , il execute mais il ne fonctionne pas d'une façon correct
    mon programme est une fonction de suppression ,il doit supprimer un "livre" aprés d'entrer son code et son nom de l'auteur et son titre
    et la suppression se fait quand l'utilisateur taper le code d'un livre pourtant mon programme m'affiche "le livre n'existe pas "

    NB: (dans mon programme principal j'ai fait la fonction d'ajouter un livre )
    voici mon programme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    struct elementlivre
    {
        int code;
        char auteur[20];
        char titre[20];
    };
     
    typedef struct fonction
    {
            struct elementlivre infolivre;
            struct fonction *suivant;
    }maillon;
     
    typedef maillon* liste;:modo:
     
    maillon* suppression(maillon* l)
    {
         int x;
         maillon *p,*avp;
         gotoxy(10,50);
         printf("entre le code de livre que vous voullez suprimer");
         scanf("%d",&x);
         if(l==NULL)
         {
            printf("la liste est vide ");
            return NULL;
         }
         else
         {
             p=l;
             avp=l;
             while((p->suivant!=NULL)&&(p->infolivre.code!=x))
             {
                 avp=p;
                 p=p->suivant;
             }    
             if(p->suivant==NULL)
            {   
                printf("le livre n'exite pas dans la liste ");
                return NULL;
            }
            avp->suivant=p->suivant;
            free(p);
            return l;
        }
    }
    merci d'vance

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 098
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 098
    Billets dans le blog
    146
    Par défaut
    Bonjour,

    Dans ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    while((p->suivant!=NULL)&&(p->infolivre.code!=x))
             {
                 avp=p;
                 p=p->suivant;
             }    
             if(p->suivant==NULL)
            {   
                printf("le livre n'exite pas dans la liste ");
                return NULL;
            }
    Tout ce que je vois, c'est qu'il affichera le message si on essaie de supprimer le dernier livre de la liste.
    Car le dernier livre de la liste à pour suivant == NULL. Donc il ne pas ça ce donner la peine de rentrer dans la boucle, et le message sera afficher.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre averti
    Inscrit en
    Décembre 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 23
    Par défaut
    merci pour ta reponse
    svp ,quelle est donc la structure convenable ?

Discussions similaires

  1. Petit programme de suppression de ligne
    Par bakaouf dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 19/07/2010, 10h26
  2. problème d'ajout et suppression de programmes
    Par ran_hery dans le forum Windows XP
    Réponses: 2
    Dernier message: 14/12/2005, 12h21
  3. Suppression d’objets via une programmation
    Par Culture dans le forum Access
    Réponses: 1
    Dernier message: 15/11/2005, 18h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo