/* * Arquivo para teste do deque * Operações possíveis: * - ii insere no início do deque * - if insere no final do deque * - ri remove o elemento no início do deque * - rf remove o elemento no final do deque * - l libera o deque */ #include #include "deque.h" int main() { Deque d; char c, c1; int r, e; cria_deque(&d); while (scanf ("%c", &c) != EOF) { switch (c) { case 'i': /* Inserções */ r = scanf ("%c %d", &c1, &e); if (r < 2) printf ("erro na entrada.\n"); else { switch (c1) { case 'i': insere_inicio_deque(&d,e); break; case 'f': insere_fim_deque(&d,e); break; default: printf ("erro na entrada.\n"); break; } } break; case 'r': /* Remoções */ scanf ("%c", &c1); switch (c1) { case 'i': r = remove_inicio_deque(&d,&e); break; case 'f': r = remove_fim_deque(&d,&e); break; default: r = 0; printf ("erro na entrada.\n"); break; } if (r == 0) printf("remoção sem sucesso\n"); break; case 'v': if (deque_vazio(&d)) printf("deque vazio.\n"); else printf("deque com elementos.\n"); break; } } return 0; }