#include <stdio.h>

/* -----------------------------------*/

struct Knoten
{
	char Ziffer;
	struct Knoten *Nachfolger;
	struct Knoten *Vorgaenger;
};

/* -----------------------------------*/

struct Listenkopf
{
	struct Knoten *anfang;
	struct Knoten *ende;
};



/* -----------------------------------*/




int main(void)
{
	struct Listenkopf Liste;
	struct Knoten Knoten1, Knoten2, Knoten3;
	struct Knoten *aktuell;
     
  
	Knoten1.Ziffer='6';
	Knoten1.Vorgaenger=0;
	Knoten1.Nachfolger=&Knoten2;
     
	Knoten2.Ziffer='4';
	Knoten2.Vorgaenger=&Knoten1;
	Knoten2.Nachfolger=&Knoten3;
     
	Knoten3.Ziffer='2';
	Knoten3.Vorgaenger=&Knoten2;
	Knoten3.Nachfolger=0;
     
	Liste.anfang=&Knoten1;
	Liste.ende=&Knoten3;
     
	printf("Unsere kurze Liste:\n");
     
	aktuell=Liste.anfang;
     
	while(aktuell)
	{ 
		printf("%c",aktuell->Ziffer); 
		aktuell=aktuell->Nachfolger;
	}
    
	printf("\n");
    
    
	printf("Unsere kurze Liste, rueckwaerts:\n");
     
	aktuell=Liste.ende;
     
	while(aktuell)
	{ 
		printf("%c",aktuell->Ziffer); 
		aktuell=aktuell->Vorgaenger;
	}
    
	printf("\n");
  

  
	return(0);
  
}
