albino13 Against TCPA // Palladium | Dite moi ce que vous en pensez (certe j'y arrive mais pas comme je le pensais au depart...)
Code :
- void fclientMAJ(void)
- {
- int b,numRepC,rep,cp;
- char nom[40],adr[50],vil[20],tel[10];
- FILE *fclient;
- if((fclient=fopen("client.dat","a" ))==NULL)
- {
- puts("Erreur" );
- getch();
- }
- else
- {
- do
- {
- clrscr();
- puts("Numero de client:" );
- scanf("%d",&b);
- numRepC=fverifNumCli(b);
- if(numRepC==-1)
- {
- puts("Une erreure c'est produite..." );
- rep='n';
- getch();
- }
- else if (numRepC==0)
- {
- flushall();
- client.numCli=b;
- puts("Nom client:" );
- scanf("%[^\n]",&nom);
- strncpy(client.nomCli,nom,40);
- flushall();
- puts("Adresse:" );
- scanf("%[^\n]",&adr);
- strncpy(client.adresseCli,adr,50);
- flushall();
- puts("Ville :" );
- scanf("%[^\n]",&vil);
- strncpy(client.villeCli,vil,20);
- flushall();
- puts("Code postal :" );
- scanf("%d",&cp);
- client.cpCli=cp;
- flushall();
- puts("Telephone :" );
- scanf("%s",&tel);
- strncpy(client.telCli,tel,10);
- fwrite(&client,sizeof(struct sclient),1,fclient);
- flushall();
- puts("Desirez vous poursuivre les enregistrements? o/n" );
- scanf("%c",&rep);
- }
- else
- {
- puts("Ce numero client existe deja...\n" );
- printf("Le prochain numero client est : %d\n",(numRepC+1));
- //pouvoir ecrire quel est le prochain Numero clients dispo...
- puts("Desirez vous poursuivre les enregistrements? o/n" );
- scanf("%c",&rep);
- getch();
- }
- }while(rep=='o');
- }
- fclose(fclient);
- fmenuClient();
- }
|
Code :
- int fverifNumCli(int sNumCli)
- {
- FILE *fclient;
- int repv,max;
- max=0;
- if ((fclient=fopen("client.dat","r" ))==NULL)
- repv=-1;
- else
- {
- do
- {
- if(client.numCli==sNumCli)
- do
- {
- if(client.numCli>max)
- {
- max=client.numCli;
- repv=max;
- }
- }
- while (fread(&client,sizeof(struct sclient),1,fclient),!feof(fclient));
- else
- repv=0;
- }
- while (fread(&client,sizeof(struct sclient),1,fclient),!feof(fclient));
- }
- return repv;
- }
|
|