Buscar

Exercicio Fila - Darley

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

#include <stdlib.h>
#include <stdio.h>
#define MaxTam 5
struct fila
{
 int fim, inicio, nEl;
 int vet[MaxTam];
};
typedef struct fila fila;
int menu();
void emfileirar(fila *fila);
int desemfileirar(fila *fila);
void desemfilar_N_El();
int topo();
int buscar();
int main()
{
 int op;
 fila fila;
 fila.inicio = 0;
 fila.fim = 0;
 fila.nEl = 0;
 do
 {
 op = menu();
 switch(op)
 {
 case 1:
 emfileirar(&fila);
 break;
 case 2:
 desemfileirar(&fila);
 break;
 case 3:
 //desemfilar_N_El();
 break;
 case 4:
 //topo();
 break;
 case 5:
 //buscar();
 break;
 }
 }
 while(op != 6);
 system("pause");
}
int menu()
{
 system("cls");
 int opMenu;
 printf ("..:: FILA - Menu ::..\n\n");
 printf ("1 - Emfileirar");
 printf ("\n2 - Desemfileirar");
 printf ("\n3 - Desemfileirar N elementos");
 printf ("\n4 - Topo");
 printf ("\n5 - Busca");
 printf ("\n6 - Sair...");
 printf ("\nEscolha uma opcao: ");
 scanf("%d", &opMenu);
 return opMenu;
}
void emfileirar(fila *fila)
{
 if( fila->nEl == MaxTam)
 {
 printf("\n Fila Cheia!!!");
 system("pause");
 return;
 }
 else
 {
 int valor;
 printf("\n Digite um valor a ser enfileirado: ");
 scanf("%d", &valor);
 fila->fim = (fila->inicio + fila->nEl) % MaxTam;
 fila->vet[fila->fim] = valor;
 fila->nEl++;
 printf("\n Item [%d] armazenado!\n\n", fila->vet[fila->fim]);
 system("pause");
 }
}
int desemfileirar(fila *fila)
{
 if( fila->nEl == 0)
 {
 printf("\n Fila Vazia!!!");
 system("pause");
 return;
 }
 else
 {
 int aux = fila->inicio;
 fila->inicio = (fila->inicio + 1) % MaxTam;
 fila->nEl--;
 printf("\n Item [%d] removido!\n\n", fila->vet[aux]);
 system("pause");
 }
}

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando

Outros materiais