#include <stdio.h> #include <stdlib.h> struct tpila { int clave; struct tpila *sig; }; /* prototipos e implementacion */ void crear(struct tpila **pila); int vacia(struct tpila *pila); void apilar(struct tpila *pila, int elem);void desapilar(struct tpila *pila, int *elem); void crear(struct tpila **pila) { *pila = (struct tpila *) malloc(sizeof(struct tpila)); (*pila)->sig = NULL; } int vacia(struct tpila *pila){ return (pila->sig == NULL); } void apilar(struct tpila *pila, int elem){ struct tpila *nuevo; nuevo = (struct tpila *) malloc(sizeof(struct tpila)); nuevo->clave = elem; nuevo->sig = pila->sig; pila->sig = nuevo; } void desapilar(struct tpila *pila, int *elem){ struct tpila *aux; aux = pila->sig; *elem = aux->clave; pila->sig = aux->sig; free(aux); } /* programa de prueba */ int main(void) { struct tpila *pila; int elem; crear(&pila); if (vacia(pila)) printf("nPila vacia!"); apilar(pila, 1); desapilar(pila, &elem); return 0; }
aqui les dejo una interaccion de una pila como manipularla y como se introducen elementos
La idea era hacerlo tú, no copiarlo de http://www.algoritmia.net/articles.php?id=14 - te pongo 3 puntos por la tarea por el intento, pero no te voy a poder poner más puntos si no te pones a programar en vez de copiar cosas.
ResponderEliminar