for-Schleifen in C
Du möchtest mehr über die for-Schleife in C erfahren? Hier erklären wir dir, wann und wie du die for-Schleife verwenden kannst.
Inhaltsübersicht
for-Schleife C: Wann werden Schleifen verwendet?
Je größer und komplexer deine Programme werden, desto nerviger ist es, immer wieder denselben Code schreiben zu müssen. Noch dazu macht es manche Dinge, wie zum Beispiel eine vorher nicht bekannte Anzahl von Wiederholungen unmöglich. Ganz abgesehen davon, wird dein Code bei dieser Art zu Programmieren schnell zu sogenanntem Spaghetti-Code. Das heißt im Klartext: Er wird zu lang und in diesem Fall auch redundant.
Um das zu umgehen, gibt es in C sogenannte Schleifen. Diese nennt man auch Iterationen oder Wiederholungsstrukturen.
Im Allgemeinen kannst du dir ihre Funktionsweise in etwa so vorstellen wie das Verhalten eines Zuges, der in einen Bahnhof einfährt. Vorher fährt er linear – oder in unserem Fall sequentiell auf den Schienen – dann bleibt er stehen und Gäste können so lange aus- und einsteigen, bis die Abfahrtszeit des Zuges erreicht ist. Dann setzt er sich wieder auf den Schienen in Bewegung. Eine Schleife ist also nichts anderes als ein Bahnhof.
C for-Schleife
Ähnliches lässt sich auch auf die erste Art von Schleife anwenden: Die for-Schleife. Allerdings ist sie eher mit einem Signal als mit einem Bahnhof zu vergleichen, denn wir verwenden sie hier als simple Zählschleife.
Unser Zug fährt also an das Signal heran und es schaltet auf Rot. Er muss dann eine festgelegte Zeit warten, bis er weiterfahren darf. Während dieser Zeit können wir nun festlegen, was getan werden soll.
Syntax
Zu Beginn deklarieren wir unsere benötigten Variablen. Das geht in den meisten neueren C-Standards auch innerhalb der for-Schleife. Viele der älteren Standards hingegen unterstützen innerhalb des for-Schleifenkopfes nur Wertzuweisungen. Dann übergeben wir den Startwert mit einer scanf-Funktion. Erst danach können wir zu unserer Zählschleife kommen.
Sie beginnt mit dem bereits erwähnten Schleifenkopf. Dieser besteht aus der Wertzuweisung für unsere sogenannte Zählvariable, einer Bedingung und einer Anweisung. Die Zählvariable erhält zuerst also ihren Startwert, von dem aus sie jeden Durchlauf mitzählt. Die darauffolgende Bedingung legt fest, ob die Schleife überhaupt durchlaufen wird. Diese Bedingung wird vor jedem Durchgang erneut überprüft. Sollte sie wahr sein, werden die Anweisungen im Schleifenrumpf ausgeführt. Sollte sie falsch sein, wird der Code NACH der Schleife ausgeführt und damit alle ihre Anweisungen übersprungen.
Im Wahrheitsfall erfolgt die Ausführung aller Anweisungen des Anweisungsblockes und erst danach wird unsere Zählvariable manipuliert. In unserem Fall zählt sie ganz simpel herunter. An dieser Stelle können aber auch ganz andere, komplexere Rechnungen stehen. Ist diese Anweisung ausgeführt, beginnen wir von vorne – diesmal aber ohne die Wertzuweisung nochmals auszuführen, da sie nur den Countdown zurücksetzen würde. Stattdessen beginnt dieser Schleifendurchlauf direkt mit der Überprüfung der Bedingung.
Solltest du eine oder mehrere der Funktionen des Schleifenkopfes nicht benötigen, kannst du sie einfach leer lassen. Aber Achtung! Ohne Bedingung schaffst du dir eine Endlosschleife.