Probleme mit Struktur

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Probleme mit Struktur

    Hallo Leute .

    Bei der Aufgabe zur Erstellung einer "Lagerverwaltung" mit Hilfe einer Struktur komme ich einfach nicht weiter.

    Die Aufgabe besagt , mit Hilfe einer Struktur und Funktionen eine Gewisse Anzahl "Kisten" vom Benutzer abzufragen in diesem Fall drei, diese

    als einzelne Elemente abzuspeichern und bei Bedarf mit Hilfe von Funktionen einzeln auszugeben. Z.B. zum ändern , löschen usw.

    Das einlesen funktioniert (oder ist da schon was falsch???), nur bei der Abfrage kriege ich dreimal die zuletzt eingegebene "Kiste" angezeigt.

    Desweiteren soll jede Kiste einzeln über ihre Nummer angesprochen werden,aber da siehts gleich ganz mau aus :(

    Komme einfach nicht weiter vielleicht kann mir jemand helfen das Problem zu lösen ?(


    Quellcode

    1. // Esa_4_Test.cpp: Hauptprojektdatei.
    2. #include "stdafx.h"
    3. using namespace System;
    4. // Globale Vereinbarung der Struktur
    5. struct kiste{
    6. Double breite;
    7. Double hoehe;
    8. Double laenge;
    9. };
    10. // Funktion zum einlesen der einzelnen Werte
    11. kiste einlesen(Int32 nummer){
    12. kiste aKiste; //lokale Variable
    13. Console::Write("Breite der {0}. Kiste: ",nummer);
    14. aKiste.breite = Convert::ToDouble(Console::ReadLine());
    15. Console::Write("\nHoehe der {0}. Kiste: ",nummer);
    16. aKiste.hoehe = Convert::ToDouble(Console::ReadLine());
    17. Console::Write("\nLaenge der {0}. Kiste: ",nummer);
    18. aKiste.laenge = Convert::ToDouble(Console::ReadLine());
    19. Console::WriteLine();
    20. return aKiste;
    21. }
    22. Int32 nummer( kiste aKiste){
    23. Int32 nummer;
    24. nummer = aKiste.breite, aKiste.hoehe, aKiste.laenge;
    25. return nummer;
    26. }
    27. int main(array<System::String ^> ^args)
    28. {
    29. // lokale Vereinbarung der Strukturvariablen für die Struktur Kiste
    30. kiste kleineKiste[3];
    31. // Einlesen über die Funktion einlesen
    32. for(Int32 schleife = 0; schleife < 3; schleife++)
    33. kleineKiste[schleife] = einlesen(schleife+1);
    34. for(Int32 schleife = 0;schleife < 3; schleife++)
    35. Console::WriteLine("Die Masse der {0}. Kiste : \n\nBreite: \t{1} \nHoehe: \t{2} \nLaenge: \t{3} ",schleife+1,kleineKiste[2].breite,kleineKiste[2].hoehe,kleineKiste[2].laenge);
    36. Console::WriteLine();
    37. return 0;
    38. }
    Alles anzeigen
  • Quellcode

    1. kleineKiste[2]

    Ist doch klar wenn du die Kisten mit nem statischen Index ansprichst, dass du immer das selbe Ergebnis bekommst.

    Über deinen "Stil" solltest du aber wirklich nachdenken. Sowas wie einlesen, ausgabe etc packt man in eine Klasse.
    Mit CLI/.net was du hier verwendest (oder?) hast du dein Programm auf Win32 reduziert, obwohl das mit ISO-C++ (NICHT ANSI!) viel schöner geht und vor allem performanter.
    MfG
    Sometimes it pays to stay in bed in Monday, rather than spending the rest of the week debugging Monday's code. ~Dan Salomon