Les files en C

Fermé
berlingo-48 Messages postés 33 Date d'inscription vendredi 1 juin 2012 Statut Membre Dernière intervention 24 avril 2013 - 3 juin 2012 à 17:06
berlingo-48 Messages postés 33 Date d'inscription vendredi 1 juin 2012 Statut Membre Dernière intervention 24 avril 2013 - 3 juin 2012 à 18:19
Bonjour,

je viens de réaliser un programme des files en c et il ne veut même pas se compiler .

#include <stdio.h>
#include <stdlib.h>
typedef struct personne
{
unsigned int heure;
unsigned int minute;
struct personne *suivant;

}personne;
typedef personne* per;
per enfiler(per,unsigned int,unsigned int);
unsigned int nombre_file(per);
void affiche(per);
per h_d_p(per);
per arrive_bus(per,unsigned int);
per deffiler(per);
main()
{
F=h_d_p(F);
F=h_d_p(F);
F=h_d_p(F);
F=h_d_p(F);
F=h_d_p(F);
affiche(F);
F= arrivee_bus(F,0);
printf("Mise a jour de la file d attente\n");
affiche(F);
system("pause");
}



per enfiler(per f,unsigned int h, unsigned int m)
{
per f;
per f=malloc(sizeof(per));
if(f!=NULL)
{
f->heure=h;
f->minute=m;
f->suivant=NULL;

}
return f;
}
unsigned int nombre_file(per F)
{
unsigned int c=0;
while(F!=NULL)
{
c++;
}
return c;
}

void affiche(per F)
{
if (F==NULL) return printf("la file est vide\n");
else
{
while(F)
{
printf("l'heure d'arruvé est %u et %u minute \n",F->heure,F->minute);
F=F->suivant;
}

}
}
per h_d_p(per F)
{
per enfiler(per,unsigned int,unsigned int);
unsigned int h,m;
printf("entrer l'heure et minuste de l'arrivé\n");
scanf("%u %u",&h,&m);
F=enfiler(F,h,m);
return F;
}
per arrivee_bus(per F,unsigned int l)
{
per defiler(per);
int i;
for(i=0;i<l;i++)
{
F=defiler(F);
}
return F;
}
per deffiler(per F)
{
per p=F;
if(nombre(F)==0) return NULL;
else if(nombre(F)==1){free(F); return NULL;}
{
while(((p)->suivant)->suivant)
{
(p)=(p)->suivant;
}

free((p)->suivant);
(p)->suivant=NULL;
}
return F;
}


A voir également:

1 réponse

berlingo-48 Messages postés 33 Date d'inscription vendredi 1 juin 2012 Statut Membre Dernière intervention 24 avril 2013 1
3 juin 2012 à 18:19
Besoin d'une correction svp !
0