| Bienvenue sur HaKwArA - Forum Maroc. |
![]() |
| LinkBack | Outils de la discussion | ![]() | Modes d'affichage | ![]() |
| | #1 (permalink) | ||||
| voilà, je participe aussi avec un mini projet que j'ai réalisé en C, il s'agit d'un petit programme qui gère un petit magasin ou on stock des produits, les enregistrer dans un fichier, les modifier, les supprimer... vous n'avez qu'à copier le code et le coller dans votre turbo C...puis l'exécuter... ![]() //************************************************** ****** //CREE PAR YOUNES //le 08/06/2008 #include<stdio.h> #include<conio.h> #include<string.h> #define chemin printf("chemin du fichier :"); typedef struct produit produit; struct produit { char designation[40]; float prix_unitaire; int code,stock; }; void lister() { produit nouveau; FILE* fptr; char fichier[80]; int car; printf("\n"); printf(" Entrer le chemin de votre fichier : "); scanf("%s",fichier); printf("\n\n"); fptr=fopen(fichier,"r"); while(fscanf(fptr,"%d %s %f %d",&nouveau.code,&nouveau.designation,&nouveau.pr ix_unitaire,&nouveau.stock)!=EOF) { printf(" code : %d\n",nouveau.code); printf(" Designation : %s\n",nouveau.designation); printf(" prix unitaire : %.2f\n",nouveau.prix_unitaire); printf(" stock : %d\n\n\n",nouveau.stock); } fclose(fptr); } void ajouter() { produit nouveau,test; FILE *fptr; char fichier[80]; int elements=1,i; printf("\n"); printf(" Combien des elements vous allez ajouter ? :");scanf("%d",&elements); printf("\n\n");printf(" ");chemin scanf("%s",fichier); fptr=fopen(fichier,"a+"); if(fichier!=NULL) { for(i=0;i<elements;i++) { printf("\n\n"); printf(" Code :"); scanf("%d",&nouveau.code);rewind(fptr); while(fscanf(fptr,"%d %s %f %d",&test.code,&test.designation,&test.prix_unitai re,&test.stock)!=EOF) { if(nouveau.code==test.code) { printf("\n\n Ce produit existe deja, le voila :\n\n\n"); printf(" Code : %d\n",test.code); printf(" Designation : %s\n",test.designation); printf(" Prix Unitaire : %2.2f\n",test.prix_unitaire); printf(" Stock : %d\n\n",test.stock); printf("\n\n\n\n ........OPERATION ANNULEE......"); getch(); exit(0); } } fprintf(fptr,"%d\n",nouveau.code); printf(" Designation :"); scanf("%s",&nouveau.designation); fprintf(fptr,"%s\n",nouveau.designation); printf(" Prix Unitaire :"); scanf("%f",&nouveau.prix_unitaire); fprintf(fptr,"%2.2f\n",nouveau.prix_unitaire); printf(" Stock :"); scanf("%d",&nouveau.stock); fprintf(fptr,"%d\n",nouveau.stock); printf("\n\ .......... ELEMENT AJOUTE AVEC SUCCES............"); } } fclose(fptr); } void rechercher( int code) { produit nouveau; FILE* fptr; char fichier[80]; printf("\n\n ");chemin scanf("%s",fichier); fptr=fopen(fichier,"r"); while(fscanf(fptr,"%d %s %f %d ",&nouveau.code,nouveau.designation,&nouveau.prix_ unitaire,&nouveau.stock)!=EOF) { if(code==nouveau.code) { printf("\n\n ----------ELEMENT TROUVE AVEC SUCCES------------"); printf("\n\n\n code :%d\n",nouveau.code); printf(" designation :%s\n",nouveau.designation); printf(" Prix_unitaire :%.2f\n",nouveau.prix_unitaire); printf(" Stock :%d\n",nouveau.stock); } } printf("\n\n\n\n\n\n\n\n\n Attention ! dans le cas ou le programme ne vous donne rien, c'est qu'il n'a rien trouvé "); fclose(fptr); } void modifier(int code) { produit nouveau; FILE *fptr,*fptr1; char fichier[80],fich[80]; printf("\n\n ");chemin scanf("%s",fichier); fptr=fopen(fichier,"r"); fptr1=fopen("c:\\jiji.txt","w"); while(fscanf(fptr,"%d %s %f %d",&nouveau.code,&nouveau.designation,&nouveau.pr ix_unitaire,&nouveau.stock)!=EOF) { if(code!=nouveau.code) { fprintf(fptr1,"%d\n",nouveau.code); fprintf(fptr1,"%s\n",nouveau.designation); fprintf(fptr1,"%.2f\n",nouveau.prix_unitaire); fprintf(fptr1,"%d\n",nouveau.stock); } else { printf("\n Nouveau Code :"); scanf("%d",&nouveau.code); fprintf(fptr1,"%d\n",nouveau.code); printf(" Nouvelle Designation :"); scanf("%s",nouveau.designation); fprintf(fptr1,"%s\n",nouveau.designation); printf(" Nouveau prix unitaire :"); scanf("%f",&nouveau.prix_unitaire); fprintf(fptr1,"%.2f\n",nouveau.prix_unitaire); printf(" Nouveau Stock :"); scanf("%d",&nouveau.stock); fprintf(fptr1,"%d\n",nouveau.stock); puts("\n\n\n\n ---------Modification effectuee avec succes---------"); } } puts("\n\n\n\nAttention ! si le programme ne vous a pas donne la possibilité de modifier, c'est que le code que vous avez entrez n'existe pas"); fclose(fptr1); fclose(fptr); remove(fichier); rename("c:\\jiji.txt",fichier); } void supprimer(int code) { produit nouveau; FILE *fptr,*fptr1; char fichier[80],fich[80]; printf("\n\n ");chemin scanf("%s",fichier); fptr=fopen(fichier,"r"); fptr1=fopen("c:\\jojojo.txt","w"); while(fscanf(fptr,"%d %s %f %d",&nouveau.code,nouveau.designation,&nouveau.pri x_unitaire,&nouveau.stock)!=EOF) { if(code!=nouveau.code) { fprintf(fptr1,"%d\n",nouveau.code); fprintf(fptr1,"%s\n",nouveau.designation); fprintf(fptr1,"%.2f\n",nouveau.prix_unitaire); fprintf(fptr1,"%d\n",nouveau.stock); } } fclose(fptr1); fclose(fptr); remove(fichier); rename("c:\\jojojo.txt",fichier); printf(" \n\n\n\n\n\n\n ...L'element qui a le code que vous avez entre a ete efface..."); } void main() {int choix,code; clrscr(); printf(" ------------------------ MENU----------------------\n\n\n\n"); printf(" 1 : Ajout d\'un element au fichier.\n"); printf(" 2 : Listing des informations du fichier.\n"); printf(" 3 : Recherche : affichge d\'un element.\n"); printf(" 4 : Suppression d\'un element.\n"); printf(" 5 : Modification des champs d\'un element.\n\n\n\n"); printf(" ----------------------------------------------------\n\n"); printf(" votre choix:"); scanf("%d",&choix); switch(choix) { case 1 :ajouter();break; case 2 :lister();break; case 3 :printf("\n\n donner le code que vous voulez chercher : ");scanf("%d",&code);rechercher(code);break; case 5 :printf("\n donner le code que vous voulez modifier : ");scanf("%d",&code);modifier(code);break; case 4 :printf("\n\n donner le code de lenregistrement que vous voulez supprimer : ");scanf("%d",&code);supprimer(code);break; default :{printf("\n\n\n\n\n ERREUR ! entrez un numero compris entre 1 et 5");break;} } getch(); } //************************************************** ******
| |||||
|
| | ||
| ------------------ HaKwArA.CoM ... | ||
| | #2 (permalink) | ||||||||||||||
![]()
Points : 190
|
Pouvoir: 39 Reputation: ![]() ![]() | ça marche pas, il y a une erreur quelque part, j'ai essayé le mode debug, mais ça marche pas non +
| ||||||||||||||
|
| | #3 (permalink) | ||||||||||||||
![]()
Points : 187
|
Pouvoir: 38 Reputation: ![]() ![]() | Aw, ça marche bien chez moi, sur quelle ligne tu as l'erreur ? et sur quel IDE tu l'as exécuté ?
| ||||||||||||||
|
| | #4 (permalink) | ||||||||||||||
![]()
Points : 190
|
Pouvoir: 39 Reputation: ![]() ![]() | Il s'arrête ici } printf("\n\n\n\n\n\n\n\n\n Attention ! dans le cas ou le programme ne vous donne rien, c'est qu'il n'a rien trouvé "); fclose(fptr); } et je l'ai lancé avec Code blocks
| ||||||||||||||
|
| | #5 (permalink) | ||||
| | non big boss logiquement ca marche mais en revenant en arriére ya une boucle while ce qui signifie que peut etre tu na pas lu un fichier (ou entré un nom de fichier inexistant (l'admin n'a pas fait de verification en ce qui concerne si le fichier est vide ou non))et ce qui te donne boucle infinie sur le while...é ca bloque...
| ||||
|
| | #6 (permalink) | ||||||||||||||
![]()
Points : 187
|
Pouvoir: 38 Reputation: ![]() ![]() | essaie de le lire avec turbo c, parce que je pense qu'avec code blocks faut faire quelques petites modifications
| ||||||||||||||
|
| | #7 (permalink) | ||||||||||||||
![]()
Points : 259
|
Pouvoir: 52 Reputation: ![]() ![]() ![]() | Bjr, on doit copier coller tt ce qui est ecrit en bleu ??
| ||||||||||||||
|
| | #8 (permalink) | ||||||||||||||
![]()
Points : 190
|
Pouvoir: 39 Reputation: ![]() ![]() | Citation: Envoyé par admin [vous ne pouvez pas voir le lien].[enregistrez vous ici] essaie de le lire avec turbo c, parce que je pense qu'avec code blocks faut faire quelques petites modifications Ok je vais le télécharger Citation: Envoyé par metalmag [vous ne pouvez pas voir le lien].[enregistrez vous ici] Bjr, on doit copier coller tt ce qui est ecrit en bleu ?? Yes!!!
| ||||||||||||||
|
| | #9 (permalink) | ||||||||||||||
![]()
Points : 188
|
Pouvoir: 38 Reputation: ![]() ![]() | Très bien tout ça. On a du talent sur ce forum, ça fait plaisir. Bonne continuations les amis.
| ||||||||||||||
|
![]() |
| Utilisateurs regardant la discussion actuelle : 1 (0 membre(s) et 1 invité(s)) | |
| Outils de la discussion | |
| Modes d'affichage | |
|
|
Discussions similaires | ||||
| Discussion | Auteur | Forum | Réponses | Dernier message |
| projet (creer un mangas) | orochimaru-sama | FORUM ANIMES | 38 | 13/10/2008 20h07 |
| projet 3D | lord ahriman | Design & Graphisme | 8 | 25/07/2008 21h14 |
| vous avez realisez un nouveau projet(programme/dessin/site...) c le moment de le presenter :p | saadinto | Design & Graphisme | 3 | 23/04/2008 16h09 |