Bonjour,
je cherche a faire une comparaison entre un mot entre avec le clavier et des enregistrements dans un fichier. Malheureusement, malgre tous mes efforts, le programme ne me dit jamais quand les chaines de caracteres comparees sont egales.
Je vous remercie d'avance pour votre aide.
voici le code:
#include <stdio.h>
main(){
FILE* fcategorie=NULL;
FILE* fncategorie=NULL;
char nom_categorie[50];
char temp[75];
char chaine[51];
int rcmp;
int ligne=0;
fcategorie = fopen("categorie.txt", "a");
fclose(fcategorie);
printf("ajout de la categorie\n");
puts("nom de la categorie a ajouter? (1 mot autorise)");
scanf("%s",&nom_categorie);
//check si la categorie existe deja
fcategorie=fopen("categorie.txt","r");
printf("lecture fichier\n");
while (!feof(fcategorie))
{
fgets(chaine,50, fcategorie);
printf("trouve ds le fichier :%s",chaine);
printf("on compare : ");
if ((strcmp(nom_categorie,chaine))==0 )
{
printf("categorie trouvee");
}
else
{
printf("categorie differente");
}
printf("\n");
}
fclose(fcategorie);
puts("fin");
}