Listes doublement chaînées
meryema92
Messages postés
31
Date d'inscription
Statut
Membre
Dernière intervention
-
meryema92 Messages postés 31 Date d'inscription Statut Membre Dernière intervention -
meryema92 Messages postés 31 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
en fait j'ai trouvé un exercice sur internet qui demandait d'inverser une liste doublement chaînée en se servant des adresses et non pas des contenus des cellules
voici le programme que j'ai proposé mais je ne sais pourquoi ça ne marche pas quand je fais l'exécution du programme . j'ai vraiment besoin d'aide
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
typedef struct circulaire{
int contenu;
circulaire *pcd;
circulaire *suiv;
};
void inverse(circulaire *d)
{
int m=0; circulaire *c;
while(d!=NULL)
{m++;}
while(d!=NULL)
{d=d->suiv;
}
if(d==NULL)
{ c=d;
int i=0;
while(i!=m)
{
c->suiv=d->pcd;
d->pcd=(d->pcd)->pcd;
c=c->suiv;
printf("%d\t",c->contenu);
i++;
}
}
}
main()
{
circulaire *p,*d;
int i;
for(i=0;i<8;i++)
{
p=(circulaire*) malloc(sizeof(circulaire));
p->contenu=i;
p->suiv=NULL;
p->pcd=(p->pcd)->suiv;
printf("%d\t",p->contenu);
}
inverse(d);
getch();
}
en fait j'ai trouvé un exercice sur internet qui demandait d'inverser une liste doublement chaînée en se servant des adresses et non pas des contenus des cellules
voici le programme que j'ai proposé mais je ne sais pourquoi ça ne marche pas quand je fais l'exécution du programme . j'ai vraiment besoin d'aide
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
typedef struct circulaire{
int contenu;
circulaire *pcd;
circulaire *suiv;
};
void inverse(circulaire *d)
{
int m=0; circulaire *c;
while(d!=NULL)
{m++;}
while(d!=NULL)
{d=d->suiv;
}
if(d==NULL)
{ c=d;
int i=0;
while(i!=m)
{
c->suiv=d->pcd;
d->pcd=(d->pcd)->pcd;
c=c->suiv;
printf("%d\t",c->contenu);
i++;
}
}
}
main()
{
circulaire *p,*d;
int i;
for(i=0;i<8;i++)
{
p=(circulaire*) malloc(sizeof(circulaire));
p->contenu=i;
p->suiv=NULL;
p->pcd=(p->pcd)->suiv;
printf("%d\t",p->contenu);
}
inverse(d);
getch();
}
A voir également:
- Les listes doublement chainées en c
- Liste déroulante en cascade - Guide
- Listes déroulantes excel - Guide
- Supprimer les photos en double sur pc - Guide
- Lister les disques cmd - Guide
- Comment mettre sa liste d'amis en privé sur facebook - Guide