Bonjour,
Je suis actuellent entrain de faire un petit programme qui enregistre les Produits avec leur prix. Au lancement du programme, j'ai plus options ... dont l'ajout de prix et de leur prix.
Pour cela, j'ai utilisé un tableau (une entrée) mais dont j'ai créé le type (voir code ci dessous). Lors de l'ajout de l'article, je n'ai pas de soucis, lorsque je l'affiche aucun soucis non plus , mais lorsque le fichier est créé, j'ai à la place du nom de l'article, le caractère è suivi du bon prix!
Je ne comprends pas trop comment résoudre mon problème... voici une partie du code ...
Vous me direz surement que mes procédures sont mal déclarées ... cela est "normal".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56 struct typeArticle { char NomArticle[20]; float PrixArticle; }; typeArticle TabArticle[11]; //Procédure permettant de calculer un prix TTC void CalculTTC () { //Déclaration des Variables Locales float PrixHT; //Début de la procédure cout<<"Saisir le prix HT du produit: "; cin >>PrixHT; PrixTTC=FPrixTTC(PrixHT); //Ici, on appelle le resultat de la fonction (FPrixTTC avec en paramètre PrixHT) cout<<"Le prix TTC est de "<<PrixTTC<<" euros\n"; } //Procédure pour Ajouter un ou plusieurs articles void AjouterArticle() { //Déclaration des variabes locales char NomArticle[20]; float PrixArticle; char Reponse[1]; //Début de la procédure do { NbArticle=NbArticle+1; cout<<"Saisissez le nom de l'article: "; cin >> NomArticle; CalculTTC();//Appel de la procédure Facture strcpy(TabArticle[NbArticle].NomArticle,NomArticle); TabArticle[NbArticle].PrixArticle=PrixTTC; cout <<"Voulez-vous saisir un autre produit? (o,n) "; cin >>Reponse; } while (strcmp(Reponse,"o")==0); } void SauvegarderProduit() { int i; FILE *fproduit; if (NbArticle>0) { cout << "Sauvegarde des preoduits"; fproduit = fopen("produit.txt","w"); for (i=1;i<=NbArticle;i=i+1) { fprintf(fproduit,"%c %.2f \n",TabArticle[i].NomArticle,TabArticle[i].PrixArticle); } fclose(fproduit); } }
Merci
Partager