Kimossab

ED - Função Extra

Jul 12th, 2015
280
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.68 KB | None | 0 0
  1. struct strct_aux
  2. {
  3.     char nom[150];
  4.     int qt;
  5. }
  6.  
  7. void funcao_extra(EDados *ed)
  8. {
  9.     if(!ed || !ed->camioes)
  10.         return;
  11.  
  12.     strct_aux *ax = NULL
  13.     int count = 0,i;
  14.  
  15.     NOCAM *C = ed->camioes->inicio;
  16.     while(C)
  17.     {
  18.         for(i=0; i<count; i++)
  19.             if(strcmp(C->info->nome,ax[i].nom) == 0)
  20.             {
  21.                 ax[i].qt++;
  22.                 break;
  23.             }
  24.         if(i == count)
  25.         {
  26.             ax = (strct_ax *)realloc(ax,sizeof(strct_ax) * (count+1));
  27.             strcpy(ax[count].nom,C->info->nome);
  28.             ax[count].qt = 1;
  29.             count++;
  30.         }
  31.         C = C->prox;
  32.     }
  33.  
  34.     for(i=0; i<count; i++)
  35.     {
  36.         printf("%s ", ax[i].nom);
  37.         while(ax[i].qt > 10)
  38.         {
  39.             printf("[10]");
  40.             ax[i].qt-=10;
  41.         }
  42.         printf("[%d]",ax[i].qt);
  43.     }
  44.     free(ax);
  45. }
Advertisement
Add Comment
Please, Sign In to add comment