Liste in Dokument spiechern
Verfasst: Mo Mär 30, 2009 2:08 pm
				
				Ich hab diesen Kod:
Und will das diese ...................... Liste in dem ....................... Dokument abgespiechert wird-
Ich hab im Buch nachgelesen:
Aber das was da sthet funkt nur mit int Variablen.
Ich hab gegooglet:
Nichts verwertbares gefunden.
ich hab nen bekannten gefrag:
Der hatte keine ahnung.
Helft mir bitte mit dem .......... Ding ich hatte lezte nacht schon albträumen fon dem ding!!!!!!
mfg
Empire
			Code: Alles auswählen
#include <stdio.h>
#include <stdlib.h>
typedef struct Element        // Struktur für die Liste. Erklärung warum sie zwei Namen hat siehe unten.
{
  struct Element *next;      // Zeiger auf den nächsten Knoten
  char  Buchtitel[20];
  char  Autor[30];
  char  ISBNummer[15];
  char  Inhalt[500];
  char  Kommentar[100];                        // Zahl die in dem Knoten gespeichert wird.
} Knoten;
static char datei[]="Buchliste.txt";
int main ()
{
    FILE *fp;
  if((fp=fopen("LISTE.DAT","a+"))==NULL);
  int anz, i;
  Knoten *listen_kopf, *ptr_knoten, *help;                   // Kopf der Liste und 2 Hilfszeiger
  listen_kopf = NULL;  
                                 // Liste ist leer
  printf ("Anzahl: ");
  scanf ("%d", &anz);                                   // Eingabe der Anzahl
  printf ("\n\n");
  for (i = 0; i < anz; i++)                            // Erstellen von "anz"-Elementen
  {
    ptr_knoten = (Knoten *) malloc (sizeof(Knoten));        // Speicher für neues Element reservieren
    printf ("Buchtitel des %d. Buches: ", i + 1);
    scanf("%s", &ptr_knoten -> Buchtitel);
    printf ("Autor des %d. Buches: ", i + 1);
    scanf("%s", &ptr_knoten -> Autor);
    printf ("Die ISBNummer des %d. Buches: ", i + 1);
    scanf("%s", &ptr_knoten -> ISBNummer);
    printf ("Der Inhalt des %d. Buches: ", i + 1);
    scanf("%s", &ptr_knoten -> Inhalt);
    printf ("Kommentar zum %d. Buch: ", i + 1);
    scanf("%s", &ptr_knoten -> Kommentar);        // Wert für den Knoten einlesen
    ptr_knoten -> next = listen_kopf;                    // Knoten wird am Beginn eingefügt
    listen_kopf = ptr_knoten;                              // neuer Knoten ist der neue Listenkopf
  }
  printf ("\n\n");
  for (i = 0; i < anz; i++)                               // Ausgabe der Liste
  {
    printf ("Buch:\n%s\n\n", ptr_knoten -> Buchtitel);
    printf ("Autor:\n%s\n\n", ptr_knoten -> Autor);
    printf ("ISBnummer:\n%s\n\n", ptr_knoten -> ISBNummer);
    printf ("Inhalt:\n%s\n\n", ptr_knoten -> Inhalt);
    printf ("Kommentar:\n%s\n\n", ptr_knoten -> Kommentar);
    ptr_knoten = ptr_knoten -> next;                 // nächster Knoten
  }
  ptr_knoten = listen_kopf;                              // Pointer auf den Listenkopf setzen
  while (ptr_knoten != NULL)                             // Löschen der Liste; wenn der Pointer NULL ist, dann ist die Liste zu Ende
  {
    help = ptr_knoten -> next;                   // Adresse des nächsten Knotens speichern
    free (ptr_knoten);                               // Speicher freigeben
    ptr_knoten = help;                                 // dadurch bist du auf dem nächsten Knoten
  }
  printf ("\n");
  scanf ("%d");
  return 0;
}Ich hab im Buch nachgelesen:
Aber das was da sthet funkt nur mit int Variablen.
Ich hab gegooglet:
Nichts verwertbares gefunden.
ich hab nen bekannten gefrag:
Der hatte keine ahnung.
Helft mir bitte mit dem .......... Ding ich hatte lezte nacht schon albträumen fon dem ding!!!!!!
mfg
Empire
