Advertisement
Guest User

Untitled

a guest
Mar 29th, 2020
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.39 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. /*2)Ecrire un programme permettant de lire les quantités en stock et les prix respectifs des produits d'un magasin.
  6. Utilisez pour cela une structure Produit dont les champs sont
  7. - le code du produit (chaine),
  8. - le prix (réel)
  9. - la quantité en stock (entier).
  10.  
  11. Créer une procédure de saisie pour encoder 10 produits; la procédure de saisie est appelée à chaque tour de boucle.
  12. Déterminez en même temps, dans la fonction principale main(), le produit dont la valeur est la plus élevée et retenez-en le code
  13. pour l'afficher en fin de programme.
  14.  
  15. Créez une procédure pour afficher la valeur totale du stock.
  16. Créez une procédure pour afficher le code du produit le plus cher.
  17. Attention : ces deux dernières procédures reçoivent respectivement une valeur float et un vecteur de caractères.
  18. Appelez ces deux procédures en fin de programme.
  19. */
  20.  
  21. #define N 5
  22.  
  23. struct produit
  24. {
  25. char code[20];
  26. float prix;
  27. int quantite;
  28. };
  29.  
  30. void saisie_produit(struct produit *);
  31. void affichage_produit(struct produit *,int);
  32. void code_max(char *);
  33. void valeur_stock(float);
  34.  
  35. int main()
  36. {
  37. struct produit a;
  38. struct produit V[N];
  39. int i=0;
  40. char max1[20];
  41. float tot=0,mult=0,max=0;
  42.  
  43. mult=0;
  44. do
  45. {
  46. saisie_produit(&a);
  47. V[i]=a;
  48. mult=a.prix*a.quantite;
  49. tot=tot+mult;
  50. if(a.prix>max)
  51. {
  52. max=a.prix;
  53. strcpy(max1,a.code);
  54. }
  55. i++;
  56. }
  57. while(i<N);
  58.  
  59. if(i>0)
  60. {
  61. printf("\n***Les differents produits***\n");
  62.  
  63. affichage_produit(V,N);
  64. }
  65.  
  66. code_max(max1);
  67. valeur_stock(tot);
  68.  
  69. return 0;
  70. }
  71.  
  72. void saisie_produit(struct produit *p)
  73. {
  74. fflush(stdin);
  75. printf("\nCode : ");
  76. gets(p->code);
  77.  
  78. printf("\nPrix : ");
  79. scanf("%f",&p->prix);
  80.  
  81. printf("\nQuantite : ");
  82. scanf("%d",&p->quantite);
  83. }
  84.  
  85. void affichage_produit(struct produit *p,int taille)
  86. {
  87. int i;
  88.  
  89. for(i=0;i<taille;i++)
  90. {
  91. printf("\n\tCode %d : %s, Prix : %.2f euro(s), Quantite : %d\n",i+1,p[i].code,p[i].prix,p[i].quantite);
  92. }
  93. }
  94.  
  95. void code_max(char *maximum)
  96. {
  97. printf("\nLe code du produit le plus cher est : %s\n",maximum);
  98. }
  99.  
  100. void valeur_stock(float total)
  101. {
  102. printf("\nLa valeur totale du stock est de : %.2f euro(s)\n",total);
  103. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement