Listas En lenguaje C

Páginas: 12 (2829 palabras) Publicado: 21 de agosto de 2013

//============================LIBRERIAS=======================================
#include
#include
#include
#include
#define tama 100//declaracion de la contante tama de valor 100
//==============================================================================
//==============================================================================
typedef char tipo_dato;//tipo_dato es unnuevo de tipo de variable que corresponde a char

typedef struct nodo
{
tipo_dato dato;//(tipo de variable "tipo_dato" y la variable dato)
struct nodo *siguiente;//autoreferencia
};
//==============================================================================
//=================PROTOTIPOS DE FUNCIONES======================================//==============================================================================
void inicializa (nodo**p);//funcion que se lleva o tinene como argumento nodo por paso por referencia
void push (tipo_dato x, nodo **p);//referencia
void pop (nodo **p);
int vacia (nodo *p);//valor
void vaciarpila(nodo *p);
tipo_dato tope (nodo *p);
void imprimir (nodo *p);
void verificar (nodo **p, nodo **q);
void pon_en_pila(nodo **p,nodo**pr,nodo **a);
//==============================================================================
//========================PRINCIPAL=============================================
//==============================================================================
int main ()
{
system("COLOR 5F");
tipo_dato dato;//se declara la variable "dato" de tipo "tipo_dato", sinonimo de tipo charstruct nodo *p;//En esta linea una variable apuntador de tipo struct nodo que se llama p
inicializa(&p);//en esta linea se realiza el llamdo de la funcion inicializar pila
struct nodo *q;//En esta linea una variable apuntador de tipo struct nodo que se llama p
inicializa(&q);//llamado de la funcion inicializa pila
struct nodo *a;//En esta linea una variable apuntador de tipostruct nodo que se llama p
inicializa(&a);//llamado de la funcion inicializa pila
pon_en_pila(&p,&q,&a);//llamado de la funcion pon_en_pila
imprimir (p); /*llamado dela funcion imprimir, para mostrar en pantalla el resultado
final de la pila despues de haber ejecutado la funcion pon_en_pila*/
printf("\n\n");//salto de linea
system ("pause");
return 0;//fin
}//==============================================================================
//=======================FUNCION INCIALIZA====================================

void inicializa (nodo**p)
{
*p=NULL;
}
//==============================================================================
//======================FIUNCION PUSH====================================
void push (tipo_dato x, nodo**p)
{
nodo *nuevo;
nuevo= (nodo*) malloc (sizeof (nodo));
nuevo->dato=x;
nuevo -> siguiente = *p;
(*p)=nuevo;

}
//==============================================================================
//==========================FUNCION ELIMINAR=================================
void pop (nodo **p)
{
nodo *f;
if (vacia (*p)!=1)
f = *p;(*p)=(*p) -> siguiente;
free (f);
}
//==============================================================================
//=============================================FUNCION VACIA=================================
int vacia (nodo *p)
{
if (p==NULL)
{
return 1;
}
else
return 0;
}//==============================================================================
//==============================================================================
void vaciarpila(nodo *p)
{
while (vacia (p)!=1)
pop (&p);
}
//==============================================================================
//==============================================================================
tipo_dato tope (nodo *p)
{
if...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Lenguaje C Listas
  • Listas c++
  • Listas en c#
  • Listas en c
  • Listas c++
  • Listas en C++
  • Listas C++
  • lenguaje c

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS