Programm wird einfach beendet in c++?

...komplette Frage anzeigen

2 Antworten

allgemein

for(Anweisung_Start;Bedingung_für_Fortsetzung;Anweisung_pro_Schleifendurchlauf)

  • Anweisung_Start wird am Anfang ausgeführt, normalerweise nimmt man hier eine Implementierung der Läufer-Variable vor. Diese Anweisung wird nur einmal ausgeführt.
  • Bedingung_für_Fortsetzung: diese Bedingung wird am Anfang der Schleife geprüft, der Passus darin wird als boolscher Ausdruck interpretiert.
  • Anweisung_pro_Schleifendurchlauf: Anweisung, die jeweils am Ende der Schleife durchgeführt wird, vor der Bedingung (Vorsicht, dadurch endet die Läufer-Variable über der Bedingung, sofern Du sie extern instanzierst und weiterverwendest, wird mitunter bewusst gemacht).

https://msdn.microsoft.com/de-de/library/b80153d8.aspx

Danke , hab es damals einfach vergessen , weil ich die for schleife selten benutze :D kann es aber wieder ^^

1

In der for-Syntax hast du als Laufbedingung eine NULL, was praktisch zum sofortigen Abbruch der Schleife führt. Du weist i 0 zu statt eine boolsche Bedingung zu formulieren. Außerdem veränderst du in der Schleife i nie, so dass es eine Endlosschleife wäre.

Kleine Hinweis: INITIALISIERE!!!!!!!

Beispiel: for(int i=0; i < 10 && i < notenAnzahl; i++)

soll ich i mit 1 initialisieren?

0
@Rakozou

Nein, du hast es anscheinend nicht verstanden und benutzt for KOMPLETT FALSCH. Lies dir genau die Beschreibung durch und schaue die Beispiele an.

0
@priesterlein

oh ich hab das ganz vergessen, ich habe die letzte zeit nicht programmiert und benutze die for-Schleife selten , danke :)

0

if(notenanzahl>0)

{

     int [notenAnzahl]

     for(int i=0;i<notenAnzahl;i++)

          cin>>noten[i]

}

wäre auch eine Lösung?

0

Was möchtest Du wissen?