Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
#include <stdio.h> #include <stdlib.h> #define MAX 9 struct pilha{ int i; float vet[MAX]; }; typedef struct pilha Pilha; Pilha* cria(void){ Pilha* p = (Pilha*)malloc(sizeof(Pilha)); p->i = 0; return p; } void empilha(Pilha* p, float v){ if(p->i == MAX){ printf("\nCapacidade Esgotada\n"); exit(1); } p->vet[p->i] = v; p->i++; } int vazia(Pilha* p){ return(p->i == 0); } float desempilha(Pilha* p){ float aux; if(vazia(p)){ printf("\nPilha vazia\n"); exit(1); } aux = p->vet[p->i-1]; p->i--; return aux; } void Libera(Pilha* p){ free(p); } void imprime(Pilha* p){ int aux; for(aux=0; aux < p->i;aux++){ printf("%f\n",p->vet[aux]); } } int main(int argc,char** argv){ Pilha* k; k = cria(); empilha(k,1.5); empilha(k,2.5); empilha(k,3.5); imprime(k); printf("\n=============================\n"); desempilha(k); imprime(k); }