Pilha ed
#include
struct PILHA{ struct NO *topo; int tamanho; } PILHA;
struct FILA{ struct NO *inicio; struct NO *fim; int tamanho; } FILA; struct NO{ int num; struct NO *prox; };
struct NO *novo; struct NO *aux;
void inicializa(){ PILHA.topo = NULL; PILHA.tamanho = 0; FILA.inicio = NULL; FILA.fim = NULL; FILA.tamanho = 0;
}
void coloca_pilha(){
int valor; novo = (struct NO *)malloc(sizeof(struct NO)); system("cls"); printf("Digite o Elemento\n\n "); fflush(stdin); scanf("%d", &valor); novo -> num = valor; PILHA.tamanho ++; novo->prox = PILHA.topo; PILHA.topo = novo; system("cls"); printf("Elemento Computado\n"); system("pause");
}
void excluir_pilha(){
if (PILHA.topo == NULL){ system("cls"); printf("Nao a Elementos computados\n\n"); system("pause"); } else{ aux = PILHA.topo; PILHA.topo = PILHA.topo -> prox; PILHA.tamanho--; free(aux); printf("Elemento Excluido\n\n"); system("pause"); }
}
void mostra_pilha(){
if (PILHA.topo == NULL){ system("cls"); printf("Nao a Elementos computado\n\n"); system("pause"); } else{ aux = PILHA.topo; while(aux != NULL){ printf("%d", aux -> num ); aux = aux -> prox; } printf("\n"); system("pause"); }
}
void coloca_fila(){
int valor; novo = (struct NO *)malloc(sizeof(struct NO)); system("cls"); printf("Digite o Elemento\n\n "); fflush(stdin); scanf("%d",&valor); novo -> num = valor; novo -> prox = NULL; FILA.tamanho ++;
if (FILA.inicio == NULL){ FILA.inicio = novo; FILA.fim = novo; } else{