Ejemplo de implementacion de pilas
#include <stdio.h> #include <stdlib.h> /* declaracion */ 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; }
Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.
Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:
- Si es lenguaje C [c]Código en C[/c]
- Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].
De esta manera el código coloreas el código.
Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:Me reservo el derecho de alterar, publicar o no los comentarios as´ como cambiar mis condiciones en el momento que así lo requiera.
¿estas de acuerdo? entonces adelante que ya te he quitado bastante tiempo leyendo esta basura de advertencias :)