Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include "queue.h"
- void queue_create (queue_t *q)
- {
- q->dados[0] = 2;
- q->dados[1] = 1;
- q->tam = 0;
- }
- void queue_push (queue_t *q, int x)
- {
- if (!queue_full(*q))
- {
- q->dados[1] >= 100 ? q->dados[1] = 2 : q->dados[1]++;
- q->dados[q->dados[1]] = x;
- q->tam++;
- }
- else
- printf("Fila cheia!\n");
- }
- int queue_pop (queue_t *q)
- {
- if (!queue_empty(*q))
- {
- int x = q->dados[q->dados[0]];
- q->dados[0] >= 100 ? q->dados[0] = 2 : q->dados[0]++;
- if (q->dados[0] >= 100)
- q->dados[0] = 2;
- q->tam--;
- return x;
- }
- else
- printf("Fila vazia!\n");
- }
- int queue_empty (queue_t q)
- {
- if (!q.tam) return 1;
- return 0;
- }
- int queue_full (queue_t q)
- {
- if (q.tam == MAXN) return 1;
- return 0;
- }
- int queue_front (queue_t q)
- {
- return q.dados[q.dados[0]];
- }
- void queue_print (queue_t q)
- {
- int i;
- printf("Front:|");
- for (i = q.dados[0]; i != q.dados[1]; i >= 100 ? i = 2 : i++)
- {
- printf("%d|", q.dados[i]);
- }
- printf("%d|:Back\n", q.dados[i]);
- printf("Tam: %d\n", q.tam);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement