Advertisement
Guest User

Untitled

a guest
Mar 26th, 2017
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.91 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. #define maxletras 30 // 30 letras por nome, 30 colunas no vetor
  6.  
  7. int main()
  8. {
  9.     int numclientes;
  10.     printf("Insira o numero de clientes: ");
  11.     scanf("%i", &numclientes);
  12.  
  13.  
  14.     char **clientes = (char**)malloc(numclientes * sizeof(char*));
  15.  
  16.     int *mercadorias_quant = (int*)malloc(numclientes * sizeof(int*));
  17.  
  18.     float *mercadorias_precos = (float*)malloc(numclientes * sizeof(float*));
  19.  
  20.  
  21.     int i;
  22.     for (i = 0; i < numclientes; i++)
  23.     {
  24.         clientes[i] = (char*)malloc(maxletras * sizeof(char));
  25.         mercadorias_precos[i] = 0;
  26.     }
  27.  
  28.     char nome[maxletras];
  29.  
  30.     for (i = 0; i < numclientes; i++)
  31.     {
  32.         printf("\nInsira o nome do cliente %i: ", i);
  33.         fflush(stdin);
  34.         fgets(nome, maxletras, stdin);
  35.  
  36.         int p;
  37.         for (p = 0; p < maxletras; p++)
  38.         {
  39.             if (nome[p] == '\n')
  40.                 nome[p] = '\0';
  41.  
  42.         }
  43.         strcpy(clientes[i],nome);
  44.  
  45.         printf("\nInsira quantas mercadorias o cliente %s comprou: ", clientes[i]);
  46.         int mercadorias;
  47.         scanf("%i", &mercadorias);
  48.         mercadorias_quant[i] = mercadorias;
  49.  
  50.  
  51.         int m;
  52.         for (m = 0; m < mercadorias; m++)
  53.         {
  54.             float valor;
  55.             printf("\nInsira o preco da mercadoria %i: ", m);
  56.             scanf("%f", &valor);
  57.             mercadorias_precos[i] += valor;
  58.         }
  59.     }
  60.  
  61.     int maiorcomp=0, maiorpag=0;
  62.  
  63.     for (i = 0; i < numclientes; i++)
  64.     {
  65.         printf("\nCliente: %s  Quantidade de compras: %i Pagou: %0.2f reais.", clientes[i], mercadorias_quant[i], mercadorias_precos[i]);
  66.         if (mercadorias_quant[i] > mercadorias_quant[maiorcomp])
  67.             maiorcomp = i;
  68.         if (mercadorias_precos[i] > mercadorias_precos[maiorpag])
  69.             maiorpag = i;
  70.     }
  71.  
  72.     printf("\nO cliente %s foi o maior pagador.",clientes[maiorpag]);
  73.     printf("\nO cliente %s comprou mais mercadorias\n", clientes[maiorcomp]);
  74.  
  75.  
  76.     free(clientes);
  77.     free(mercadorias_quant);
  78.     free(mercadorias_precos);
  79.     clientes = NULL;
  80.     mercadorias_quant = NULL;
  81.     mercadorias_precos = NULL;
  82.  
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement