Danke, so ist es besser.
Norhug hat folgendes geschrieben : |
| 4) Wenn erster Menüpunkt ausgewählt wird: Soll man aufgefordert werden die int-Mitglieder der Struktur mit Werten zu füllen unter Nummer: 1 aber nur einmal, dann soll man zurück zum Hauptmenü kehren. Bei erneuter Auswahl soll die Nummer automatisch auf 2 stehen und so weiter bis 100. |
Ganz verstehe ich den Ablauf nicht. Klar ist aber: Du brauchst eine Variable für das Formular, die den letzten bearbeiteten Index registriert. Den verwendest du als Start- und/oder Ende-Bedingung der Schleife oder auch für einen einzelnen Durchgang.
Norhug hat folgendes geschrieben : |
| Punkt "a" wurde ausgewählt!...Man kommt in das Hauptmenü zurück! |
Du solltest die Abfrage (das Hauptmenü) und die Ausführung in verschiedene Methoden auslagern. In Main gibt es eine einfache Schleife:
Quelltext
1: 2: 3: 4:
| mache nächste Abfrage switch bis Ende gewünscht |
Das entspricht schließlich genau deiner Anforderung.
Norhug hat folgendes geschrieben : |
| - Was gibt es noch an dem Quellcode zu bemängeln, speziell was das Einlesen angeht? |
Eigentlich ist grundsätzlich eine Klasse besser als eine Struktur, aber in deiner Situation mag eine Struktur noch angehen.
Bist du sicher, dass es immer genau 100 Elemente sind (oder eine andere feste Anzahl)? Dann ist Array in Ordnung. Bei flexiblen Listen solltest du unbedingt auf List<Kiste> umsteigen.
Die Convert-Methoden sind meistens ungünstig. In deinem Fall gilt:
* Mit Console.ReadKey kannst du genau eine Taste, also auch ein Zeichen abfragen. (Na gut, Convert.ToChar liefert das erste Zeichen eines Strings und ist also fast genausogut.)
* Convert.ToInt32(Console.ReadLine()) ist zu ersetzen durch:
C#-Quelltext
1: 2:
| int value; if( int.TryParse( Console.ReadLine(), out value ) {...} |
Denn was passiert, wenn als Wert ein leerer String oder "Hallo" oder eine Dezimalzahl eingegeben wird...
Darüber hinaus fällt mir aber nichts auf.
Gruß Jürgen