You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
69 lines
1.3 KiB
69 lines
1.3 KiB
#include "partie1.h"
|
|
|
|
ListeDept listenouv(void)
|
|
{
|
|
ListeDept l;
|
|
l = NULL;
|
|
return l;
|
|
}
|
|
|
|
ListeDept insererEnTete(ListeDept l, char departement[], int nbP, char resp[])
|
|
{
|
|
MaillonDept *m;
|
|
m = (MaillonDept *)malloc(sizeof(MaillonDept));
|
|
if (m == NULL)
|
|
{
|
|
printf("Fonction insererEnTete : problème malloc");
|
|
exit(1);
|
|
}
|
|
strcpy(m->departement, departement);
|
|
m->nbP = nbP;
|
|
strcpy(m->resp, resp);
|
|
m->suiv = l;
|
|
return m;
|
|
}
|
|
|
|
ListeDept inserer(ListeDept l, char departement[], int nbP, char resp[])
|
|
{
|
|
if (l == NULL)
|
|
{
|
|
return insererEnTete(l, departement, nbP, resp);
|
|
}
|
|
if (strcmp(departement, l->departement) < 0)
|
|
{
|
|
return insererEnTete(l, departement, nbP, resp);
|
|
}
|
|
if (departement == l->departement)
|
|
{
|
|
return l;
|
|
}
|
|
l->suiv = inserer(l->suiv, departement, nbP, resp);
|
|
return l;
|
|
}
|
|
|
|
void afficher(ListeDept l)
|
|
{
|
|
if (vide(l))
|
|
{
|
|
printf("\n");
|
|
return;
|
|
}
|
|
printf("%s\t%d\t%s\n", l->departement, l->nbP, l->resp);
|
|
afficher(l->suiv);
|
|
}
|
|
|
|
void afficherDept(ListeDept l)
|
|
{
|
|
if (vide(l))
|
|
{
|
|
printf("\n");
|
|
return;
|
|
}
|
|
printf("\t\t%s\n", l->departement);
|
|
afficherDept(l->suiv);
|
|
}
|
|
|
|
bool vide(ListeDept l)
|
|
{
|
|
return l == NULL;
|
|
} |