você deve primeiro decidir sobre qual a forma de implementaçao sera usada nas pilhas e filas .Ex: Pilha estatica com vetor, Pilha dinamica com uma struct e ponteiros *next, *top....etc .Lembrando que as Filas podem ser implementadas com o uso de um apontador para o primeiro no da estrutura, para facilitar os funçoes de teste. Ex: Na funçao RemoverElemento() você so remove se ApontadorFila =! NULL , já que não se remove um elemento de uma fila vazia, pois causa Underflow !!! Ate + . :-)