ALGO EN C++ A CORIGER J ai Fais l effort !!!!
Résolu
M-crew
Messages postés
477
Statut
Membre
-
M-crew Messages postés 477 Statut Membre -
M-crew Messages postés 477 Statut Membre -
Bonjour,
le voila l algo il demande d sotker des enregisteremenr et puis supprimer et ajouter..mais mon blém c'est que quand je vais pour voir l fichier si il est creé j l trouve mais vide..sans enregistrement
#include<stdio.h>
#include<conio.h>
#include<io.h>
#include<stdlib.h>
/******************************************************/
/* Phase declaration de variable et d'initialisation */
/******************************************************/
FILE *flivre;
struct livre
{
int reflivre;
char tlivre[20];
int nbexp;
};
struct livre l1;
/*****************************************************/
/* Phase Traitements */
/*****************************************************/
int main()
{
if (fopen("d:\\livre.dat","a")==NULL)
{
printf("Le fichier n'a pu être ouvert");
exit(1);
}
printf("reference livre :");
scanf("%d",&l1.reflivre);
printf("titre livre : ");
scanf("%s",&l1.tlivre);
printf("nombre exp : ");
scanf("%d",&l1.nbexp);
printf("%d\n",l1.reflivre);
printf("%s\n",l1.tlivre);
printf("%d",l1.nbexp);
fwrite(&l1,sizeof(l1),1,flivre);
fclose(flivre);
return 0;
}
le voila l algo il demande d sotker des enregisteremenr et puis supprimer et ajouter..mais mon blém c'est que quand je vais pour voir l fichier si il est creé j l trouve mais vide..sans enregistrement
#include<stdio.h>
#include<conio.h>
#include<io.h>
#include<stdlib.h>
/******************************************************/
/* Phase declaration de variable et d'initialisation */
/******************************************************/
FILE *flivre;
struct livre
{
int reflivre;
char tlivre[20];
int nbexp;
};
struct livre l1;
/*****************************************************/
/* Phase Traitements */
/*****************************************************/
int main()
{
if (fopen("d:\\livre.dat","a")==NULL)
{
printf("Le fichier n'a pu être ouvert");
exit(1);
}
printf("reference livre :");
scanf("%d",&l1.reflivre);
printf("titre livre : ");
scanf("%s",&l1.tlivre);
printf("nombre exp : ");
scanf("%d",&l1.nbexp);
printf("%d\n",l1.reflivre);
printf("%s\n",l1.tlivre);
printf("%d",l1.nbexp);
fwrite(&l1,sizeof(l1),1,flivre);
fclose(flivre);
return 0;
}
A voir également:
- ALGO EN C++ A CORIGER J ai Fais l effort !!!!
- Aide : algo palindrome - Forum Programmation
- Demande d'algo Mastermind - Forum Programmation
- Algo de Huffman en ADA - Forum Windows
- Aide pour exercice algo - Forum Algorithmes / Méthodes
- Algo nombres premiers - Forum Programmation
3 réponses
Salut,
if (fopen("d:\\livre.dat","a")==NULL)
Il ne faut pas oublier de définir flivre.
Sinon, ce n'est pas du C++ mais du C ça ;).
Pas besoin d'inclure conio.h, ni io.h.
Et enfin, évite les variables globales. Ramène tout ça dans ton main ;)
Cdlt
if (fopen("d:\\livre.dat","a")==NULL)
Il ne faut pas oublier de définir flivre.
if ((flivre=fopen("d:\\livre.dat","a"))==NULL)
Sinon, ce n'est pas du C++ mais du C ça ;).
Pas besoin d'inclure conio.h, ni io.h.
Et enfin, évite les variables globales. Ramène tout ça dans ton main ;)
Cdlt
M-crew
Messages postés
477
Statut
Membre
5
J ai fais tous ce que t dis ..mais toujour je trouve a la fin le fichier dans l c avec 0 b...s ve dire la phase d enregistrement ne se valide pas !!!!!!!!!
Bizarre, car ce code marche sur ma machine :
#include <stdio.h>
#include <stdlib.h>
struct livre
{
int reflivre;
char tlivre[20];
int nbexp;
};
int main(void)
{
FILE *flivre;
struct livre l1;
flivre=fopen("ta.dat","a");
if(flivre==NULL)
{
printf("Le fichier n'a pu être ouvert");
exit(1);
}
printf("reference livre :");
scanf("%d",&l1.reflivre);
printf("titre livre : ");
//attention cela s'arrêtera au premier espace
//et si tu rentres 20 caractères ou plus, cela
//peut bugguer
scanf("%s",&l1.tlivre);
printf("nombre exp : ");
scanf("%d",&l1.nbexp);
printf("%d\n",l1.reflivre);
printf("%s\n",l1.tlivre);
printf("%di\n",l1.nbexp);
fwrite(&l1,sizeof(l1),1,flivre);
fclose(flivre);
return 0;
}