1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| void gagnant (int nbjoueurs,Joueur t[],int nbpartie)
{
char ligne[200];
int j,i,min=1000,mini;
FILE *pfile;
pfile = fopen("res.txt", "r+"); //ouverture du fichier
if(pfile==0)
{
printf("\nerreur lors de l'ouverture du fichier");
}
printf("\nMaintenant, la lecture des noms dans un fichier, via le compte du nombre d'occurence d'un prenom.");
for(i=0;i<((nbjoueurs-1)*nbpartie);i++)//exemple : 3 joueurs, 5 partie -> 2 perdants / partie => 2*5=10 lecture de ligne
{
fscanf(pfile,"%s",ligne);//lkecture 1ere ligne du fichier
//~ printf("\nLigne du fichier : %s",ligne);
for(j=0;j<nbjoueurs;j++)//on parcourt tous les joueurs, pour comparer avec la ligne du fichier
{
//~ printf("\nLecture de la ligne %d : %s avec le joueur %d : %s ",i,ligne,t[j].indice,t[j].name);
if(strcmp(t[j].name,ligne)==0)//on compare la valeur de la ligne, avec le nom du participant
{
t[j].scoretxt++;//si on trouve un joueur, son score est incrémenté
j=nbjoueurs;
}
}
}
for(i=0;i<nbjoueurs;i++)
{
if(t[i].scoretxt<min)
{
mini=i;
min=t[i].scoretxt;
}printf("\n %s %d",t[i].name,t[i].scoretxt);
}
printf("\nLe gagnant via la recherche dans le fichier txt\n Est : %s avec un score de %d\n",t[mini].name,t[mini].scoretxt);
fclose(pfile); //on referme le fichier, bien ou non ? A voir
} |
Partager