Liste chainé en C:URGENT
body2003
Messages postés
1
Statut
Membre
-
adso Messages postés 14 Statut Membre -
adso Messages postés 14 Statut Membre -
ma fonction d'ajout d'un element a une liste chainé est:
void SAISIE(struct liste *l)
{
struct personne *nouveau;
struct personne *p;
nouveau=(struct personne *)malloc(sizeof(struct personne));
if(nouveau==NULL)
{
printf("ajout impossible!");
exit(1);
}
printf(" - Entrez le nom :");
scanf("%s",nouveau->nom);
nouveau->suivant=NULL;
if(l->premier==NULL)
{
l->premier=nouveau;
}
else
{
p=l->premier;
while(p!=NULL)
{
p=p->suivant;
}
p=nouveau;
}
}
aprés que j'ajoute plusieurs elements je constate que seulementle premier element qui est ajouté.
where is the problem?
void SAISIE(struct liste *l)
{
struct personne *nouveau;
struct personne *p;
nouveau=(struct personne *)malloc(sizeof(struct personne));
if(nouveau==NULL)
{
printf("ajout impossible!");
exit(1);
}
printf(" - Entrez le nom :");
scanf("%s",nouveau->nom);
nouveau->suivant=NULL;
if(l->premier==NULL)
{
l->premier=nouveau;
}
else
{
p=l->premier;
while(p!=NULL)
{
p=p->suivant;
}
p=nouveau;
}
}
aprés que j'ajoute plusieurs elements je constate que seulementle premier element qui est ajouté.
where is the problem?
A voir également:
- Liste chainé en C:URGENT
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste code ascii - Guide
- Chaine tnt gratuite sur mobile - Guide
- Chaine radio - Télécharger - Médias et Actualité
Ensuite en sortie de boucle while, tu mets p->suivant=nouveau
--
Adso