no save
Assistance
Achat
News

Forum | programmation
modifier un fichier en C
£udo, le jeu. 31 mars 2005 à 19:33:01
salut , j' ai un souci avec un fichier en C. Mon pg permet les gestion des absences, des retard et des retenues par trimestre. Voila j'ai la structure suivante :

struct eleve
{
int identifiant;
char nom[LG];
char prenom[LG];
char classe[LG];
char numtel[LG];
int retard;
int absence;
int retenue;
int retard_trim1;
int absence_trim1;
int retenue_trim1;
}seleve ;

je voudrais grace a une fonction reinitialiser les champs retard, absences et retenues pour les mettre dans les champs retard_trim1, absences_trim1 et retenues_trim1, pour ensuite les remettre a 0. J'ai essayé comme ça :
void reinit_eleve()
{

char rep;
int compteur;
printf("Vous allez reinitialiser \n\nles -retenues\nles -absences\nles -retards\n\ndu trimestre en cours\n");
printf("Voulez vous continuez ?\n");
scanf("%c",&rep);
flushall();


fichier_eleve=fopen("fichier1_eleve","wb");//on ouvre le fichier
if((rep=='o')|| (rep=='O'))
{
while (fread (&seleve, sizeof(seleve),1,fichier_eleve) != 0)//tant qu'on lit dans le fichier
{
fseek(fichier_eleve,sizeof(seleve)*(seleve.absence),SEEK_SET);
seleve.absence_trim1=seleve.absence;
compteur=compteur+1;
}
}//fin if
else
{
printf("Il n'y a pas d'eleve dans la base...\n\n");
}

fseek(fichier_eleve,sizeof(seleve)*(seleve.absence),SEEK_SET); //SEEK SET faire bouger le curseur du pointeur
//on se replace a l'endroit du fichier où se trouve l' eleve
fwrite(&seleve,sizeof(seleve),1,fichier_eleve);
//on écrit le client dans le fichier, par dessus
fclose(fichier_eleve);//fermeture du fichier
getch();


}

Le bleme c'est ke ça passe pas et je sais ke y a des soucis mais je vois pas ou.

Qqn peut m'aider plizz?

(¯`·.¸¸.-> £udo <-.¸¸.·´¯)


SKZ81
mars 05
Suivant
REPONSES
SKZ81
mars 05
DestyNov@
avr. 05
blurk
avr. 05
£udo
avr. 05
Ravachol
avr. 05
£udo
avr. 05
Ravachol
avr. 05
SKZ81
avr. 05
Version Web
Réalisé par RedShift
no save