[C con Clase] help

Adolfo Cárdenas adocardenas en gmail.com
Vie Sep 4 02:19:47 CEST 2009


Se puede usar un arreglo de enteros
o una ista enlazada.

En lista enlazada se debe definir una estructura asi:


struct Elemento
{
  int valor;
  Elemento* siguiente;
};
Elemento inicio;

//ALGUNAS FUNCIONES QUE SON LAMADAS CON EL MENU ANTES CITADO POR John

void IniciarLIsta()
{
  inicio = NULL;
}

void insertInicio()
{
  Elemento* pe;
  pe = new Elemento;
  pe -> valor = opcion;
  pe -> siguiente  = NULL;

   if(inicio == NULL) //o if(!inicio) //SI AUN NO HAY UN ELEMENTO EN LA LISTA
  {
    inicio = pe;
  }
  else
  {
    pe -> siguiente = inicio;
    inicio = pe;
  }
}

void insertFinal()
{
   Elemento* pe;
   pe = inicio;

  while(pe->siguiente != NULL) //IR AL ULTIMO ELEMENTO
  {
    pe = pe -> siguiente;
  }
  pe->siguiente = new Elemento;
  pe = pe->siguiente;
  pe->valor = NULL;
  pe->siguiente = NULL;
}

/*PARA MOSTRAR Y ELIMINAR ES PARECIDO A insertFinal  SOLO QUE EN EL BUCLE
WHILE HAY QUE IR COLOCANDO DELETE (aux = pe; pe = pe->siguiente;
delete aux DONDE AUX ES UN Elemento*) SI SE QUIERE ELIMINAR Y printf("
valor: %d  ", pe->valor); SI SE QUIERE MOSTRAR. PARA INSERTAR EN FORMA
ORDENADA TAMBIEN SE RECORRE LA LIST PERO COMPARANDO VALORES CON  EL
NUEVO VALOR*/




Más información sobre la lista de distribución Cconclase