Advertisement
Guest User

Untitled

a guest
Dec 18th, 2017
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.77 KB | None | 0 0
  1. typedef struct product{
  2. char name[20];
  3. int category;
  4. float price;
  5. }product;
  6.  
  7. void fill_in_product(product *t, int n){
  8. int i;
  9. for(i=0;i<n;i++){
  10. printf("Product %d:\n",i);
  11. scanf("%s",t[i].name);
  12. scanf("%d",&t[i].category);
  13. scanf("%f",&t[i].price);
  14.  
  15. }
  16. }
  17.  
  18. product average_price_max(product t[], int n){
  19. int i,sumlib1=0,sumlib2=0,sumlib3=0;
  20. float sum1=0,sum2=0,sum3=0;
  21. float srednia1,srednia2,srednia3;
  22. for(i=0;i<n;i++){
  23. if(t[i].category == 1){
  24. sum1 += t[i].price;
  25. sumlib1++;
  26. }
  27. if(t[i].category == 2){
  28. sum2 += t[i].price;
  29. sumlib2++;
  30. }
  31. if(t[i].category == 3){
  32. sum3 += t[i].price;
  33. sumlib3++;
  34. }
  35.  
  36. }
  37. printf("%f ",sum1);
  38. printf("%f ",sum2);
  39. printf("%f\n",sum3);
  40. srednia1 = sum1/sumlib1;
  41. printf("%.2f ",srednia1);
  42. srednia2 = sum2/sumlib2;
  43. printf("%.2f ",srednia2);
  44. srednia3 = sum3/sumlib3;
  45. printf("%.2f ",srednia3);
  46. int j=0;
  47. product *tback;
  48. tback = (product*)malloc(sizeof(product)*n);
  49. if(srednia3 > srednia2 && srednia3 > srednia1){
  50. for(i=0;i<n;i++){
  51. if(t[i].category == 3){
  52. tback[j] = t[i];
  53. j++;
  54. }
  55. }
  56. }
  57. if(srednia2 > srednia3 && srednia2 > srednia1){
  58. for(i=0;i<n;i++){
  59. if(t[i].category == 3){
  60. tback[j] = t[i];
  61. j++;
  62. }
  63. }
  64. }
  65. if(srednia1 > srednia2 && srednia1 > srednia3){
  66. for(i=0;i<n;i++){
  67. if(t[i].category == 3){
  68. tback[j].category = t[i].category;
  69. tback[j].price = t[i].price;
  70.  
  71. j++;
  72. }
  73. }
  74. }
  75.  
  76. printf("\n %f",tback[0].price);
  77. return *tback;
  78. }
  79.  
  80.  
  81. int main()
  82. {
  83. int n;
  84. scanf("%d",&n);
  85. product t[n];
  86. fill_in_product(t, n);
  87. average_price_max(t, n);
  88.  
  89.  
  90.  
  91.  
  92. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement