From 7a8413d0bc1b7aa44e7401e270820c94cf2747de Mon Sep 17 00:00:00 2001 From: Roxane ROSSETTO Date: Fri, 16 Dec 2022 10:26:48 +0100 Subject: [PATCH] modif --- part2.c | 81 ++++++++++++++++++++++++++++++++++++------------------- part2.h | 29 ++++++++++---------- test | Bin 17360 -> 17368 bytes tpart2.C | 15 ----------- tpart2.c | 11 ++++++++ 5 files changed, 78 insertions(+), 58 deletions(-) delete mode 100644 tpart2.C create mode 100644 tpart2.c diff --git a/part2.c b/part2.c index 88f9df2..fb0dfc3 100644 --- a/part2.c +++ b/part2.c @@ -1,10 +1,10 @@ #include #include #include -#include "commun.h" +#include "part2.h" -##########################TABLEAU POINTEUR##################################################### +//##########################TABLEAU POINTEUR##################################################### Choix lirechx (void){//Fonction qui va lire les choix de la ville et du departement demandé par le candidat @@ -28,8 +28,6 @@ Choix lirechx (void){//Fonction qui va lire les choix de la ville et du departem Candidat lireCandidat(void)//fonction qui lit un candidat sur le clavier { Candidat c; - printf("Numéro de candidat :\n"); - scanf("%d%*c", &c.nEtu); printf("Nom du candidat :\n"); fgets(c.nom, 20, stdin); c.nom[strlen(c.nom)-1]= '\0'; @@ -73,39 +71,63 @@ Candidat lireFich1Cand (FILE * fe){ Candidat cand; fgets(cand.nom, 20, fe); - c.nom[strlen(c.nom)-1]= '\0'; + cand.nom[strlen(cand.nom)-1]= '\0'; + + fgets(cand.prenom, 20, fe); + cand.prenom[strlen(cand.prenom)-1]= '\0'; - fgets(c.prenom, 20, fe); - c.prenom[strlen(cand.prenom)-1]= '\0'; + fscanf(fe, "%f", &cand.moymat); + fscanf(fe, "%f", &cand.moyfr); + fscanf(fe, "%f", &cand.moyen); + fscanf(fe, "%f", &cand.moyspe); + fscanf(fe, "%d%*c", &cand.nbchx); - fscanf(fe, "%f", &c.moymat); - fscanf(fe, "%f", &c.moyfr); - fscanf(fe, "%f", &c.moyen); - fscanf(fe, "%f", &c.moyspe); - fscanf(fe, "%d%*c", &c.nbchx); + return cand; } -######################################### LISTES ########################################## +//######################################### LISTES ########################################## -void AffListeCandidat (Liste l){ +void AffListeCandidat (Listecand l){ if ( l == NULL) return; AffC(l->cand); AffListeCandidat(l->suivcand); } -Liste recherche (Liste l, char *nom ){ +Listecand recherche (Listecand l, char *nom ){ if ( l == NULL ){ return l;} - if ( strcmp ( l->Candidat.nom, nom ) == 0) return l; - return recherche (l->suivant, nom ); + if ( strcmp ( l->cand.nom, nom ) == 0) return l; + return recherche (l->suivcand, nom ); } +Listecand InsertT(Listecand list, Candidat c)//Insert en tête de la liste +{ + Mailloncand *c1; + + c1 = (Mailloncand*)malloc(sizeof(Mailloncand)); + if (c1 == NULL){printf("pb malloc"); exit;} + strcpy(c1->cand.nom, c.nom); + strcpy(c1->cand.prenom, c.prenom); + c1->cand.moymat = c.moymat; + c1->cand.moyfr = c.moyfr; + c1->cand.moyen = c.moyen; + c1->cand.moyspe = c.moyspe; + c1->cand.nbchx = c.nbchx; + c1->suivcand = list; + return c1; + +} - - +Listecand Insert(Listecand list, Mailloncand * c)//insert globalement +{ + if (list == NULL){return InsertT(list, c);} + if (strcmp(list->departement, m->departement)>0){return InsertT(list, m);} + list->suiv = Insert(list->suiv, m); + return list; +} @@ -118,10 +140,13 @@ void test (void){ printf("Menu :\n");//Premier affichage menu pour choisir si on veut afficher le menu d'un candidat ou toutes les candidatures printf("(1) Gestion Candidature\n(2) Affichage Candidature\n"); scanf("%d", &menu1); + printf("%d", menu1); - while (menu1 != 1 || menu1 !=2){// Traitement des erreurs - printf("Erreur de saisie veuillez refaire votre choix ! "); - printf("(1) Gestion Candidature\n(2) Affichage Candidature\n (3) Quitter"); + while (menu1 != 1 && menu1 !=2){// Traitement des erreurs + printf("Erreur de saisie veuillez refaire votre choix ! \n"); + printf("(1) Gestion Candidature\n"); + printf("(2) Affichage Candidature\n"); + printf("(3) Quitter\n"); scanf("%d", &menu1); } @@ -132,14 +157,14 @@ void test (void){ if (menugest1 == 1) //FONCTION INSERTION LISTE AVEC AFFICHAGE NOUVELLE LISTE - else if (menugest1 == 2) + //else if (menugest1 == 2) //FONCTION MISE A JOUR LISTE AVEC AFFICHAGE NOUVELLE LISTE - else if (menugest1 == 3) + //else if (menugest1 == 3) //FONCTION SUPPRESSION LISTE AVEC AFFICHAGE NOUVELLE LISTE - } - else if (menu1 == 2){ - printf("") + //} + //else if (menu1 == 2){ + printf(""); } @@ -185,4 +210,4 @@ void test (void){ -####################################### FILES ################################################# \ No newline at end of file +//####################################### FILES ################################################# \ No newline at end of file diff --git a/part2.h b/part2.h index 1347631..d8d3fd7 100644 --- a/part2.h +++ b/part2.h @@ -18,12 +18,12 @@ typedef struct { int valid;//validation du candidat }Choix; -typedef struct liste1{ +typedef struct Liste1{ Choix chx; - struct list1 * suivchx; -}Maillon1; + struct List1 * suivchx; +}Maillonchx; -typedef Maillon1 * list1; +typedef Maillonchx * Listechx; @@ -39,18 +39,21 @@ typedef struct { }Candidat; -typedef struct liste{ +typedef struct Liste{ Candidat cand; - struct liste * suivcand; -}Maillon; + struct Liste * suivcand; +}Mailloncand; -typedef Maillon * Liste; +typedef Mailloncand * Listecand; -Candidat lireCandidat(void); Choix lirechx (void); -void AffC(Candidat c); - +Candidat lireCandidat(void); +void AffC(Candidat c); +Candidat lireFich1Cand (FILE * fe); +void AffListeCandidat (Listecand l); +Listecand recherche (Listecand l, char *nom ); +void test (void); @@ -78,9 +81,5 @@ void AffC(Candidat c); -typedef struct liste { - Choix chx; - struct liste * suivant; -}Maillon; diff --git a/test b/test index a96f7a14697126be8c7eeb4d98e9c71b34a5e538..34984078a1b3c3ddb21642226f5160c5cd12fe51 100755 GIT binary patch literal 17368 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 diff --git a/tpart2.C b/tpart2.C deleted file mode 100644 index 23fdde6..0000000 --- a/tpart2.C +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include -#include -#include "commun.h" - - -int main(void) -{ - Candidat c; - c = lireCandidat(); - AffC(c); - Choix chx; - chx = lirechx(); - return 0; -} \ No newline at end of file diff --git a/tpart2.c b/tpart2.c new file mode 100644 index 0000000..b21cc82 --- /dev/null +++ b/tpart2.c @@ -0,0 +1,11 @@ +#include +#include +#include +#include "part2.h" + + +int main(void) +{ + test(); + return 0; +} \ No newline at end of file