Zum Inhalt springen

Information einlesen und speichern im Verketteliste


Empfohlene Beiträge

Geschrieben

Ich bin neuling bei Programmierung. Ich habe ein Aufgabe bekommen, leider komme ich nicht weiter:

In einer Datei ist ein Auszug aus einer Bücherliste bestehend aus n Datensätzengespeichert. Jeder Datenbestand dieser Datei hat folgenden Aufbau:

• Name des Autors (Zeichenfolge bestehend aus 20 Zeichen)

• Buchtitel (Zeichenfolge bestehend aus 30 Zeichen)

• ISBN (Zeichenfolge bestehend aus 13 Zeichen)

• Preis in EURO und Cent (reelle Zahl).

a) Entwerfen Sie den notwendigen Datentyp (buch) für diesen Datensatz.

Mein Ansatz:

struct Buch

{

char Name[20];

char Buchtitel[30];

char ISBN[13];

float preis;

Buch *pNext; // Diese Variable beinhaltet dann einen Zeiger auf das nächste Buch-Object

};

b)Geben Sie einen Algorithmus als Struktogramm an, der diese Datei datensatzweise einliest und jeden Datensatz in ein Element eines Ringes

abspeichert.

Mein Ansatz:Ich glaube meine Ansatz stimmt nicht, da hier nicht funkt.

Es fehlt noch am Ende VerketteListe in der Buchliste zu iterieren: Ich hoffe mal, dass jemand mir hier weiterhelfen kann.

readBuch()

{

Buch *pFirstBook=Null; //eine Zeigervariable, welche auf erstes Buchelement zeigt

Buch *pCurrentBook = Null; //Zeiger, um das aktuelle Buch richtig einzuordnen

Char bookName[20];

Char booktitel[30];

Char bookISBN[13];

Float bookPreis;

//Einlesen von all Bücher

while (pFirstBook != ‘\0’)

{

//Erzeuge ein neue Buch-Object

Buch *pBook = new Buch();

//setze die Werte der neuen Struktur

strcpy(pBook->Name, bookName);

strcpy(pBook->Buchtitel, bookTitel);

strcpy(pBook->ISBN, bookISBN);

bookPreis = preis;

pBook->pNext=Null;

}

if (pCurrentBook == Null)

{

pCurrentBook=pBook;

pFirstBook=pBook;

}

else

{

pCurrentBook->pNext = pBook;

pCurrentBook = pNext;

}

}

Vielen Dank

Geschrieben

Ich empfehle auch die Datenstruktur von dem Inhalt zu lösen z.B. mit Hilfe von Templates.

Vor allem fasse doch die Liste wieder als Objekt / Klasse auf, in der Du einen beliebigen Datentyp z.B. den Typ "Buch" ablegst. Es würde sich anbieten das "Buch" als Klasse zu entwickeln und innerhalb der Liste nur einen Zeigt auf das entsprechende Objekt

Phil

Geschrieben

Ich würde erst mal all die Stellen löscvhen, in denen du Zeigern die NULL zuweist. In der Regel mögen das die Umgebungen nicht, unter Windows kommt eine allgemeine Schutzverletzung.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...