C# for-Schleife
C# for-Schleife
In diesem Artikel lernen wir die for-Schleife in C# und verschiedene Möglichkeiten kennen, sie in einem Programm zu verwenden.
Beim Programmieren ist es oft erwünscht, bestimmte Anweisungsblöcke eine bestimmte Anzahl von Malen auszuführen. Eine mögliche Lösung besteht darin, diese Anweisungen so oft wie erforderlich einzugeben. Die Anzahl der Wiederholungen ist jedoch möglicherweise nicht im Voraus bekannt (während der Kompilierzeit) oder groß genug (z. B. 10000).
Die beste Lösung für ein solches Problem ist Schleife. Schleifen werden in der Programmierung verwendet, um einen bestimmten Block von Anweisungen wiederholt auszuführen, bis eine Bedingung erfüllt ist.
In diesem Artikel betrachten wir die for-Schleife in C#.
C# for-Schleife
Das für Das Schlüsselwort wird zum Erstellen einer for-Schleife in C# verwendet. Die Syntax für for loop ist:
for (initialization; condition; iterator) { // body of for loop }
Wie funktioniert die For-Schleife?
- C# for-Schleife hat drei Anweisungen:
initialization
,condition
unditerator
. - Die
initialization
-Anweisung wird zuerst und nur einmal ausgeführt. Hier wird die Variable normalerweise deklariert und initialisiert. - Dann die
condition
ausgewertet wird. Diecondition
ist ein boolescher Ausdruck, d.h. er gibt entwedertrue
zurück oderfalse
. - Falls der
condition
wird zutrue
ausgewertet :- Die Anweisungen innerhalb der for-Schleife werden ausgeführt.
- Dann die
iterator
Anweisung ausgeführt, die normalerweise den Wert der initialisierten Variablen ändert. - Wieder die
condition
ausgewertet. - Der Vorgang wird bis zum
condition
fortgesetzt wird zufalse
ausgewertet .
- Wenn der
condition
wird zufalse
ausgewertet , wird die for-Schleife beendet.
for-Loop-Flussdiagramm
Beispiel 1:C# für Schleife
using System;
namespace Loop
{
class ForLoop
{
public static void Main(string[] args)
{
for (int i=1; i<=5; i++)
{
Console.WriteLine("C# For Loop: Iteration {0}", i);
}
}
}
}
Wenn wir das Programm ausführen, lautet die Ausgabe:
C# For Loop: Iteration 1 C# For Loop: Iteration 2 C# For Loop: Iteration 3 C# For Loop: Iteration 4 C# For Loop: Iteration 5
In diesem Programm
initialization
Anweisung istint i=1
condition
Anweisung isti<=5
iterator
Anweisung isti++
Wenn das Programm ausgeführt wird,
- Zunächst die Variable i deklariert und auf 1 initialisiert.
- Dann wird die Bedingung (
i<=5
) ausgewertet. - Seitdem gibt die Bedingung
true
zurück , führt das Programm dann den Rumpf der for-Schleife aus. Es druckt die angegebene Zeile mit Iteration 1 (Iteration bedeutet einfach Wiederholung). - Nun, der Iterator (
i++
) wird ausgewertet. Dies erhöht den Wert von i bis 2. - Die Bedingung (
i<=5
) erneut ausgewertet und am Ende der Wert von i wird um 1 erhöht. Die Bedingung wird zutrue
ausgewertet die ersten 5 mal. - Wenn der Wert von i wird 6 sein und die Bedingung wird
false
sein , daher wird die Schleife beendet.
Beispiel 2:for-Schleife zur Berechnung der Summe der ersten n natürlichen Zahlen
using System;
namespace Loop
{
class ForLoop
{
public static void Main(string[] args)
{
int n = 5,sum = 0;
for (int i=1; i<=n; i++)
{
// sum = sum + i;
sum += i;
}
Console.WriteLine("Sum of first {0} natural numbers = {1}", n, sum);
}
}
}
Wenn wir das Programm ausführen, lautet die Ausgabe:
Sum of first 5 natural numbers = 15
Hier der Wert von sum und n werden auf 0 bzw. 5 initialisiert. Die Iterationsvariable i wird auf 1 initialisiert und bei jeder Iteration inkrementiert.
Innerhalb der for-Schleife, Wert von sum wird um i erhöht also sum = sum + i
. Die for-Schleife wird fortgesetzt bis i kleiner oder gleich n ist (Benutzereingabe).
Sehen wir uns an, was in dem gegebenen Programm bei jeder Iteration passiert.
Anfänglich ich =1, Summe =0 und n =3
Iteration | Wert von i | i<=5 | Wert der Summe |
---|---|---|---|
1 | 1 | wahr | 0+1 =1 |
2 | 2 | wahr | 1+2 =3 |
3 | 3 | wahr | 3+3 =6 |
4 | 4 | wahr | 6+4 =10 |
5 | 5 | wahr | 10+5 =15 |
6 | 6 | falsch | Schleife wird beendet |
Der Endwert von sum ist also 15, wenn n =5.
Mehrere Ausdrücke innerhalb einer for-Schleife
Wir können auch mehrere Ausdrücke innerhalb einer for-Schleife verwenden. Das bedeutet, dass wir mehr als eine Initialisierungs- und/oder Iterator-Anweisung innerhalb einer for-Schleife haben können. Sehen wir uns das Beispiel unten an.
Beispiel 3:for-Schleife mit mehreren Initialisierungs- und Iteratorausdrücken
using System;
namespace Loop
{
class ForLoop
{
public static void Main(string[] args)
{
for (int i=0, j=0; i+j<=5; i++, j++)
{
Console.WriteLine("i = {0} and j = {1}", i,j);
}
}
}
}
Wenn wir das Programm ausführen, lautet die Ausgabe:
i = 0 and j = 0 i = 1 and j = 1 i = 2 and j = 2
In diesem Programm haben wir zwei Variablen deklariert und initialisiert:i und j in der Initialisierungsanweisung.
Außerdem haben wir zwei Ausdrücke im Iteratorteil. Das bedeutet sowohl i und j werden bei jeder Iteration um 1 erhöht.
For-Schleife ohne Initialisierungs- und Iterator-Anweisungen
Die Initialisierung, Bedingung und die Iterator-Anweisung sind in einer for-Schleife optional. Das bedeutet, dass wir eine for-Schleife auch ohne diese Anweisungen ausführen können.
In solchen Fällen fungiert die for-Schleife als While-Schleife. Sehen wir uns das Beispiel unten an.
Beispiel 4:for-Schleife ohne Initialisierung und Iterator-Anweisung
using System;
namespace Loop
{
class ForLoop
{
public static void Main(string[] args)
{
int i = 1;
for ( ; i<=5; )
{
Console.WriteLine("C# For Loop: Iteration {0}", i);
i++;
}
}
}
}
Wenn wir das Programm ausführen, lautet die Ausgabe:
C# For Loop: Iteration 1 C# For Loop: Iteration 2 C# For Loop: Iteration 3 C# For Loop: Iteration 4 C# For Loop: Iteration 5
In diesem Beispiel haben wir die Initialisierungs- und Iterator-Anweisung nicht verwendet.
Die Variable i wird oberhalb der for-Schleife initialisiert und ihr Wert wird innerhalb des Schleifenkörpers erhöht. Dieses Programm ist dasselbe wie das in Beispiel 1.
Ebenso ist die Bedingung auch eine optionale Anweisung. Wenn wir jedoch keinen Testausdruck verwenden, testet die for-Schleife keine Bedingung und läuft ewig (Endlosschleife).
Unendliche For-Schleife
Wenn die Bedingung in einer for-Schleife immer wahr ist, wird die for-Schleife für immer ausgeführt. Dies wird als unendliche For-Schleife bezeichnet.
Beispiel 5:Unendliche for-Schleife
using System;
namespace Loop
{
class ForLoop
{
public static void Main(string[] args)
{
for (int i=1 ; i>0; i++)
{
Console.WriteLine("C# For Loop: Iteration {0}", i);
}
}
}
}
Hier, ich auf 1 initialisiert und die Bedingung ist i>0
. Bei jeder Iteration erhöhen wir den Wert von i durch 1, also wird die Bedingung niemals false
sein . Dadurch wird die Schleife endlos ausgeführt.
Wir können auch eine Endlosschleife erstellen, indem wir die Bedingung durch ein Leerzeichen ersetzen. Zum Beispiel
for ( ; ; ) { // body of for loop }
oder
for (initialization ; ; iterator) { // body of for loop }
C Sprache
- C# while und do...while-Schleife
- C#-Foreach-Schleife
- C++ für Schleife
- Java for-each-Schleife
- Zustandsüberwachung – Inspektionen
- Armstrong-Nummer im JAVA-Programm mit For-Schleife
- Palindrom-Zahlenprogramm in Java mit While- und For-Schleife
- Fallstricke bei der Zustandsüberwachung und Potenzial für die Werkswartung
- IoT für vorausschauende Wartung
- Industrie 4.0 für Asset Condition Monitoring:Bedeutung und Nutzen