salut jai un souci avec une fonction en C. Je voudrais faire en sorte que dans mon fichier il n’y est pas de doublon. Donc pas 2 fois la meme personne avec le meme nom et le meme prenom. Jai donc fait une fonction.
Pour l’instant je ne fais pas de paramètres, jai juste testé. Je demande donc le nom et le prenom, et je verifie si cette personne est deja inscrite dans le fichier. Mais ça passe pas. Jai l’impression qu’il me bloque au niveau de la 1ere personne inscrite.
Voila mon code
void doublon()
{
char n[LG];
char nom[LG];
char prenom[LG];
FILE *f;
int trouve=0;
seleve eleve;
strcpy(n,nomdufichier());
f=fopen(n,"r");
do{
printf("\n\nEntrez un nom:");
flushall();
gets(nom);
flushall();
printf("\nEntrez un prenom:");
flushall();
gets(prenom);
flushall();
fread(&eleve,sizeof(eleve),1,f);
if( (strcmp(nom,eleve.nom)==0) && (strcmp(prenom,eleve.prenom)==0) )
{
trouve=1;
flushall();
printf("Y a un doublon");
}
}while ( (!trouve) && (!feof(f)) );
flushall();
printf("Y a pas de doublon");
fclose(f);
getch();
}
Comment faire pour que ça marche?
Merci d’avance