Advertisement
Guest User

Untitled

a guest
Jul 18th, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.45 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <stdbool.h>
  4. #include <time.h>
  5.  
  6.  
  7. typedef struct Fila {
  8.    
  9.     int id,size,av1,av2,av3;
  10.     struct Fila *prox;
  11.    
  12. }fila;
  13.  
  14. fila *fila_cria(void)
  15. {
  16.     fila *pointer = (fila *) malloc(sizeof(fila));
  17.    
  18.     if (pointer != NULL)
  19.         pointer->size =0;
  20.        
  21.     return pointer;
  22. }
  23.  
  24. bool isEmpty(fila **p)
  25. {
  26.     return ((*p)->prox ==NULL);
  27. }
  28.  
  29. fila *fila_push(fila **p,int valor)
  30. {
  31.     fila *_novo_elemento = (fila *) malloc(sizeof(fila));
  32.     _novo_elemento->size =0;
  33.    
  34.     if (_novo_elemento == NULL)
  35.     {
  36.         fprintf(stderr," Erro de Alocacao \n"); exit( 0 );
  37.     }
  38.     srand(time(NULL) *5);
  39.    
  40.     _novo_elemento->id = rand() % 10000;
  41.    
  42.     if (isEmpty(*p))
  43.     {
  44.         printf("--vazia---\n");
  45.         _novo_elemento->av1 = valor;
  46.        
  47.     }else {
  48.         while(_novo_elemento != NULL){
  49.            
  50.             _novo_elemento = _novo_elemento->prox;
  51.             _novo_elemento->av1 = valor;
  52.            
  53.             _novo_elemento->prox = (*p);
  54.         }
  55.     }
  56.     _novo_elemento->size++;
  57.     return _novo_elemento;
  58. }
  59.  
  60. void _imprime_fila(fila **p)
  61. {
  62.     fila *pointer;
  63.     pointer = (*p);
  64.     if (!isEmpty)
  65.         for(; pointer!= NULL; pointer = pointer->prox){
  66.             printf("%d \n",pointer->av1);
  67.         }
  68.     else
  69.        printf("---vazia---");
  70. }
  71.  
  72. int main()
  73. {
  74.     fila *f;
  75.     f = fila_push(&f,3);
  76.     _imprime_fila(&f);
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement