Zurück zu: C Tutorial
For Schleife
Wenn Sie genau wissen, wie oft Sie einen Codeblock durchlaufen möchten, verwenden Sie die For
Schleife anstelle einer While
Schleife:
Syntax
for (expression 1; expression 2; expression 3) {
// code block to be executed
}
Ausdruck 1 wird (einmal) vor der Ausführung des Codeblocks ausgeführt.
Ausdruck 2 definiert die Bedingung für die Ausführung des Codeblocks.
Ausdruck 3 wird (jedes Mal) ausgeführt, nachdem der Codeblock ausgeführt wurde.
Das folgende Beispiel druckt die Zahlen 0 bis 4:
Beispiel
int i;
for (i = 0; i < 5; i++) {
printf("%d\n", i);
}
Beispiel erklärt
Ausdruck 1 setzt eine Variable, bevor die Schleife startet (int i = 0).
Ausdruck 2 definiert die Bedingung für die Ausführung der Schleife (i muss kleiner als 5 sein). Wenn die Bedingung erfüllt ist, wird die Schleife erneut gestartet, wenn sie falsch ist, wird die Schleife beendet.
Ausdruck 3 erhöht einen Wert (i++) jedes Mal, wenn der Codeblock in der Schleife ausgeführt wurde.
Verschachtelte Schleifen
Es ist auch möglich, eine Schleife in eine andere Schleife einzufügen. Dies nennt man verschachtelte Schleife.
The „inner loop“ will be executed one time for each iteration of the „outer loop“:
Beispiel
int i, j;
// Outer loop
for (i = 1; i <= 2; ++i) {
printf("Outer: %d\n", i); // Executes 2 times
// Inner loop
for (j = 1; j <= 3; ++j) {
printf(" Inner: %d\n", j); // Executes 6 times (2 * 3)
}
}
Beispiele aus der Praxis
Um ein praktisches Beispiel für die For Schleife zu demonstrieren, erstellen wir ein Programm, das in Zehnerschritten bis 100 zählt:
Beispiel
for (i = 0; i <= 100; i += 10) {
printf("%d\n", i);
}
In diesem Beispiel erstellen wir ein Programm, das nur gerade Zahlen zwischen 0 und 10 (einschließlich) druckt:
Beispiel
for (i = 0; i <= 10; i = i + 2) {
printf("%d\n", i);
}
Hier drucken wir nur ungerade Zahlen:
Beispiel
for (i = 1; i < 10; i = i + 2) {
printf("%d\n", i);
}
In diesem Beispiel drucken wir die Potenzen von 2 bis 512:
Beispiel
for (i = 2; i <= 512; i *= 2) {
printf("%d\n", i);
}
Und in diesem Beispiel erstellen wir ein Programm, das die Multiplikationstabelle für eine bestimmte Zahl ausdruckt:
Beispiel
int number = 2;
int i;
// Print the multiplication table for the number 2
for (i = 1; i <= 10; i++) {
printf("%d x %d = %d\n", number, i, number * i);
}
return 0;