#include #include #include "saeN.h" #define TAILLE 50 int creeadherent(int *tNC,char *tN,char *tPR,int *tA,int *tCA,int *tPO, int Tmax) { int NC,N,PR,A,CA,PO, i=0; FILE *fe; fe=fopen("adherent.txt","r"); if(fe == NULL) { printf("pbouvrfichier\n"); return -1; } fscanf(fe,"%d %s %s %d %d %d",&NC,&N,&PR,&A,&CA,&PO); while (!feof(fe)) { if(i==Tmax) { printf("%d \t %d\n",i, Tmax); printf("capasité atteinte\n"); fclose(fe); return -1; } tNC[i]=NC; tN[i]=N; tPR[i]=PR; tA[i]=A; tCA[i]=CA; tPO[i]=PO; i++; fscanf(fe,"%d %s %s %d %d %d",&NC,&N,&PR,&A,&CA,&PO); } fclose(fe); return i; } void affichageA(int *tNC,char *tN,char *tPR,int *tA,int *tCA,int *tPO, int n) { int i; printf("----------------------------------------------------------------------------\n"); printf("n°client nom\t prenom\t age\t carte\t point\n"); for (i=0;i valacherch) //il est plus loin que la valeur a recherché donc a pas trouvé { *trouvoupas = 'N'; return i; } } } void ajoutSport (int *idSports, int *pt, int *n, int taillePhys) { int nvSpo, nvNbPt, place, i; char trouvoupas; if (*n == taillePhys) //vérifie qu'il y a encore de la place dans le tableau { printf("Erreur: la table est pleine"); return; } printf("Numéro du nouveau sport: \n"); scanf("%d%*c",&nvSpo); printf("Nombre de points du nouveau sport: \n"); scanf("%d%*c",&nvNbPt); place = rechercheSport(idSports,*n,nvSpo,&trouvoupas); //donne où il doit ajouter le sport ou si il existe pas déjà if (trouvoupas == 'O') //si le sport existe déjà { printf("Erreur, le sport existe déjà\n"); return; } for (i = *n - 1 ; i >= place; i--) //décale les sports après celui à ajouter { idSports[i+1] = idSports[i]; pt[i+1] = pt[i]; } idSports[place] = nvSpo; //ajoute le sport a sa place pt[place] = nvNbPt; //ajoute le nb de points a sa place *n = *n + 1; //augmente la taille logique return; } void changprix (int *idSport, int *pt, int n) { int nvPrix , SpoChoix, place; char trouve; printf("Changer le prix de quel sport ?\n"); scanf("%d%*c",&SpoChoix); place = rechercheSport(idSport,n,SpoChoix,&trouve); if (trouve == 'N') { printf("Erreur, le sport n'existe pas\n"); return; } printf("Veuillez rentrer le nouveau prix: \n"); scanf("%d%*c",&nvPrix); pt[place] = nvPrix ; } void enlèveSport (int *idSport, int *pt, int *n) { int place, i, supSpo; char trouvoupas; printf("Numéro du sport à supprimer: \n"); scanf("%d%*c",&supSpo); place = rechercheSport(idSport,*n,supSpo,&trouvoupas); //donne la place du sport et si il l'a trouvé if (trouvoupas == 'N') //il ne l'a pas trouvé { printf("Erreur, le sport existe pas\n"); return; } for (i = place ; i < *n - 1; i++) //décalle pour pouvoir supprimer le sport { idSport[i] = idSport[i+1]; pt[i] = pt[i+1]; } *n = *n - 1; //réduit la taille logique return; }