#include #include #include #include typedef struct { char dept[31]; int nbP; char respAd[31]; } Departement; typedef struct maillonDept { Departement d; struct maillonDept *suiv; } MaillonDept,*ListeDept; typedef struct { char nom[31]; ListeDept lDept; } VilleIUT; typedef struct { char ville[31]; char dep[31]; int decisionResp; int decisionCand; } Choix; typedef struct { int numeroC; char nom[31]; char prenom[31]; float notes[4]; int nombreChoix; Choix **tChoix; } Candidat; /* Fonctions de Chargement et sauvegarde*/ Candidat ** chargementCandidats(int *tMax); Candidat * lireCandidat(FILE *flot); Choix * lireChoix(FILE *flot); void sauvegarder(Candidat *tCand[], int tMax); /* Fonctions d'affichage*/ void afficherCandidat(Candidat *c); void afficherChoix(Choix *c); void afficherCandChoix(Candidat *tCand[],int tMax); /* Fonctions de réallocation */ Candidat ** reallocationCand(Candidat *tCand[], int tMax); Choix ** reallocationChoix(Choix *tChoix[], int nbChoix); /* Fonctions de tri */ void triCandidats(Candidat *tCand[], int tMax); int plusGrandCand(Candidat *tCand[], int tMax); void echangerCand(Candidat *tCand[], int i, int j); void triChoix(Choix *tChoix[], int nombreChoix); int plusGrandChoix(Choix *tChoix[], int nombreChoix); void echangerChoix(Choix *tChoix[], int i, int j); /* Fonctions de recherche */ int rechercherChoix(Choix *tChoix[], int nombreChoix, char ville[], char dep[], int *trouve); int rechercherCandidat(Candidat *tCand[], int tMax, char nom[], char prenom[], int *trouve); /* Fonctions d'insertion/suppresion/maj*/ int insererChoix(Choix *tChoix[], int nombreChoix); /* Fonctions globale, menus*/ void globale(void); void menuCandidat(Candidat *tCand[], int tMax);