juju0612
Messages postés19Date d'inscriptiondimanche 17 février 2008StatutMembreDernière intervention24 août 2008
-
23 août 2008 à 22:16
juju0612
Messages postés19Date d'inscriptiondimanche 17 février 2008StatutMembreDernière intervention24 août 2008
-
24 août 2008 à 10:57
bonjour à tous!!!
voila ma fonction supprimer doit supprimer que le nom que je lui donne mais il supprime tous!!et je ne vois pas pourquoi!!
comment ressoudre cela!! merci d'avance
printf("\nNom a supprimer : ");
scanf(" %s",n); //donc je demande le nom a supprimer
fread(&fiche,sizeof(struct enreg),1,f);
while(!feof(f) && ok==0)
{
if(strcmpi(fiche.nom,n)==0)
{
printf("\nnom : %s",fiche.nom);
printf("\nprenom : %s",fiche.prenom); //ici je le cherche et affiche trois info
printf("\nposte : %s",fiche.poste);
printf("\nConfirmer la suppression (o/n) ? : ");
scanf(" %c",&rep); //je confirme
fflush(stdin);
if(rep=='O' || rep=='o')
{
sw=1;
ok=1;
code=fiche.nom;
tp=fopen("temp.dat","wb");
rewind(f); //par aller vers le debut du fichier
fread(&fiche,sizeof(struct enreg),1,f);
while(!feof(f))
{
if(strcmp(code,fiche.nom)!=0)
{
fwrite(&fiche,sizeof(fiche),1,tp); //ecrit tous les enregistrements dans le fichier temp.dat sauf celui choisi
}
fread(&fiche,sizeof(fiche),1,f); //mais ici a place de supprimer que le nom voulu il supprime tous
}
}
else
sw=1;