
Alle drei Schleifen können dasselbe – aber jede hat ihren Platz. Lerne die Faustregel und du wirst immer die richtige Wahl treffen!
Direktvergleich
| Schleife | Prüfung | Min. Durchläufe | Bester Einsatz |
|---|---|---|---|
| while | Vorher | 0 | Unbekannte Anzahl, unbedingt-vorprüfend |
| do-while | Nachher | 1 | Menüs, Eingabe-Validierung |
| for | Vorher | 0 | Bekannte Anzahl, Zähler, Arrays |
Dasselbe Programm – drei Wege
// while: int i=1; while(i<=5){printf("%d ",i);i++;} // do-while: do{printf("%d ",i);i++;}while(i<=5); // for: for(int i=1;i<=5;i++)printf("%d ",i);
Entscheidungshilfe
Faustregel
Anzahl bekannt? → for
Mindestens 1× sicher? → do-while
Sonst → while
Wann welche Schleife?
Die folgende Tabelle fasst die wichtigsten Entscheidungskriterien zusammen:
| Situation | Beste Wahl |
|---|---|
| Anzahl der Durchläufe vorher bekannt | for |
| Solange Bedingung gilt, Anzahl unbekannt | while |
| Mindestens einmal ausführen (z. B. Menü) | do-while |
| Über Array iterieren (Index 0 bis n-1) | for |
| Nutzereingabe validieren (solange ungültig) | do-while |
| Auf ein Ereignis warten (unbekannte Dauer) | while |
Alle drei Schleifen sind äquivalent
Technisch kann jede Schleife durch eine andere ersetzt werden. Die Wahl ist eine Frage der Lesbarkeit und Absicht – wähle immer die Schleife, die am klarsten ausdrückt, was das Programm tun soll.
Häufige Fehler
for-Schleife bei unbekannter Iterationszahl
Eine for-Schleife suggeriert, dass die Anzahl der Durchläufe bekannt ist. Wenn sie von einer Benutzereingabe oder einem externen Ereignis abhängt, ist while oder do-while die ehrlichere Wahl.
// Unklare Absicht mit for: for(; eingabe != 0;) { scanf(...); } // Klarer mit while: while(eingabe != 0) { scanf(...); }
do-while läuft immer mindestens einmal
Ein häufiger Denkfehler: Man erwartet, dass do-while bei einer von Anfang an falschen Bedingung übersprungen wird – das stimmt nicht! Der Körper wird immer einmal ausgeführt, bevor die Bedingung erstmals geprüft wird.
int x = 100; do { printf("läuft!\n"); // wird ausgegeben! } while (x < 5); // 100 < 5 ist false
⚡ Code-Simulator
Bearbeite den Code und führe ihn aus. Schleifendurchläufe werden simuliert:

Ändere Start- und Endwert oder den Schritt und beobachte wie sich die Ausgabe verändert. Das ist der beste Weg, Schleifen zu verstehen!
🎯 Wissens-Quiz
📋 Spickzettel
✅ Checkliste Unit 14
- Ich kann erklären wann welche Schleife sinnvoller ist
- Ich kann jede Schleife in die andere umschreiben
- Ich kenne die Faustregel: bekannt→for, min1→do-while, sonst→while
- Ich verstehe warum for die kompakteste Variante ist