Une petite question ^^

loulou -  
 Loulou -
Bonjour voilà j'ai une petite question a vous demander
la voici : je dois faire une base de donnée videothèque pour un loueur de cassette video, DVD etc... et mon probleme est que je n'arrive pas a afficher les données d'un DVD lorsque je fais appelle de la fonction AfficheDVD est ce que vous pouvez m'éclaircir svp

Merci ^^

1 réponse

Loulou
 
oups j'ai oublier de mettre le code ^^


#include<stdio.h>
#include<stdlib.h>

typedef struct{
	unsigned num;
	char titre[50];
	char acteur[100];
	char res[300];
	int disp;
}film;


void saisiefilm (film *f)
{
	
 	printf ("donner le num du film \n");
	fflush(stdout);
	scanf("%u",&(f->num));
	fflush(stdin);
	printf ("donner le titre du film \n");
	fflush(stdout);
	scanf("%s",(f->titre));
	fflush(stdin);
	printf ("donner des noms des acteurs \n");
	fflush(stdout);
	scanf("%s",(f->acteur));
	fflush(stdin);
	printf ("donner un bref sur le film \n");
	fflush(stdout);
	scanf("%s",(f->res));
	fflush(stdin);
	printf("donner le nombre de dvd disponible \n");
	fflush(stdout);
	scanf("%d",&(f->disp));
	fflush(stdin);
}

void ajoutDVD()
	{
	film flm;
	char rep;
	FILE *fp;
	fp=fopen("DVD.txt","a+");/*a+ (lecture et écriture, positionnement en fin de fichier si existant, création sinon).*/
	if(!fp)
	{
	printf("erreur d'ouverture du fichier");
	exit(-1);
	}
	else
	do
	{
		saisiefilm(&flm);
		fwrite(&flm,sizeof(film),1,fp);
		printf("autre ajout?o/n");
		scanf("%c",&rep);
	}while (rep!='n');
	fclose(fp);
}



void afficheDVD(double numf)
{ 
  film *dvd;
  FILE *fp=fopen("DVD.txt","a+");
  if(!fp)
	{
	printf("erreur d'ouverture du fichier");
	exit(1);
	}
	else
	{   while (fread(&dvd,1,sizeof(film),fp))
		{ 
		  printf("%lf.0",numf);
		  printf("%s",dvd->titre);
		  printf("%s",dvd->acteur);
		  printf("%s",dvd->res);
		  printf("%d",dvd->disp);
		 }
	}fclose(fp);
}
 
int ParametreDVD(){
int choix;
double numdvd;

	do{
	printf("\nQue voulez vous faire \n\n");
	fflush(stdout);
	printf("1:Ajouter fiche DVD\n");
	fflush(stdout);
	printf("2:Supprimer fiche DVD\n");
	fflush(stdout);
    printf("3:Modifier fiche DVD\n");
	fflush(stdout);
	printf("4:Afficher fiche DVD\n");
	fflush(stdout);
	printf("0:Retour Menu Principal\n");
	fflush(stdout);
	printf("\nVotre choix : ");
    scanf("%d",&choix);
    fflush(stdin);
    switch(choix){
    	case 1 : ajoutDVD();
    	         break;
    /*  case 2 :suppclt();
    	       break;
    	case 3 :modifierclt();
    	       break;*/

		case 4 : printf("entrer numero DVD : ");
				 fflush(stdout);
				 scanf("d",&numdvd);
				 fflush(stdin);
			     afficheDVD(numdvd);
				 break;

		case 0 : return(1);
    	default:printf("\nMauvais choix\n");
    }
	}while(choix!=0);
	return(0);
} 
 	             

int main(){

int choix;
    do{
    printf("\nBienvenue Dans le programme de Location video LOCATEK\n\n");
    fflush(stdout);
    printf("Tapez:\n\n");
    fflush(stdout);
    printf("1:Pour client\n");
    fflush(stdout);
    printf("2:Pour dvd\n");
    fflush(stdout);
    printf("3:Pour CD_audio\n");
    fflush(stdout);
    printf("4:Pour livre\n");
	fflush(stdout);
	printf("0:Quittez le programme\n");
	fflush(stdout);
	printf("\nVotre choix : ");
	fflush(stdout);
	scanf("%d",&choix);
	fflush(stdin);
          switch(choix){
          	/*case 1:ParametreClient();
          	       break;*/
          	case 2:ParametreDVD();
          	       break;
          	/*case 3:ParametreCD();
          	       break;
          	case 4:ParametreLivre();
          	       break;*/
			case 0:	printf("\n******Fin programme********\n\n");
					exit(0);
			default :printf("\nMauvais choix, recommencer\n");
          }
	}while(choix!=0); 

	return(1); 
}

0