Schleifen in C: For, While, Do While Schleifeping Aussagen [Beispiele]

โšก Intelligente Zusammenfassung

Schleifen in C wiederholen einen Anweisungsblock, bis eine Kontrollbedingung nicht mehr erfรผllt ist. Die Sprache bietet drei Konstrukte โ€“ die while-Schleife, die do-while-Schleife und die for-Schleife โ€“ fรผr den kontrollierten Eintritt und Austritt aus der Wiederholung.

  • ๐Ÿ” Schleifenanatomie: Jede C-Schleife kombiniert einen Block wiederholter Anweisungen mit einer Kontrollbedingung, die entscheidet, wann die Wiederholung beendet wird.
  • ๐Ÿšช Eingang vs. Ausgang: Bei den eingangsgesteuerten while- und for-Schleifen wird zuerst die Bedingung geprรผft, wรคhrend die ausgangsgesteuerte do-while-Schleife ihren Schleifenkรถrper immer einmal ausfรผhrt.
  • โ™ป๏ธ While-Schleife: Die while-Schleife prรผft ihre Bedingung vor jedem Durchlauf, was fรผr Fรคlle geeignet ist, in denen die Anzahl der Iterationen nicht im Voraus bekannt ist.
  • ๐Ÿ”‚ Do-while-Schleife: Die do-while-Schleife fรผhrt den Schleifenkรถrper vor der Prรผfung aus, sodass ein einziger Durchlauf auch dann gewรคhrleistet ist, wenn die Bedingung nicht erfรผllt ist.
  • ๐Ÿ”ข For-Schleife: Die for-Schleife fasst Initialisierung, Bedingung und Aktualisierung in einer Zeile zusammen und ist ideal zum Durchzรคhlen eines festen Bereichs.
  • โ›” Pause und weiter: Die break-Anweisung verlรคsst eine Schleife sofort, wรคhrend continue zur nรคchsten Iteration springt, ohne die Schleife zu verlassen.

Schleifen in C: For, While, Do While Schleifeping Statements

Was ist eine Schleife in C?

Kloping Anweisungen in C werden so lange wiederholt, bis die angegebene Bedingung nicht mehr erfรผllt ist. Eine Schleife in C besteht aus zwei Teilen: dem Schleifenkรถrper und einer Kontrollanweisung. Die Kontrollanweisung enthรคlt Bedingungen, die den Schleifenkรถrper so lange ausfรผhren, bis die angegebene Bedingung nicht mehr erfรผllt ist. Der Zweck einer C-Schleife ist es, denselben Code mehrmals zu wiederholen.

Arten von Schleifen in C

Abhรคngig von der Position einer Kontrollanweisung in einem Programm, looping Anweisungen in C werden in zwei Typen unterteilt:

  1. Eingangskontrollierte Schleife
  2. Regelkreis verlassen

In einer Eintrittsschleife in C wird eine Bedingung geprรผft, bevor der Schleifenkรถrper ausgefรผhrt wird. Sie wird auch Vorprรผfungsschleife genannt.

In einer ausgangsgesteuerten Schleife wird eine Bedingung nach Ausfรผhrung des Schleifenkรถrpers geprรผft. Sie wird auch als Nachprรผfungsschleife bezeichnet.

Arten von Schleifen in C

Beispielschleife

Die Kontrollbedingungen mรผssen klar definiert und spezifiziert sein, sonst wird die Schleife unendlich oft ausgefรผhrt. Eine Schleife, die ununterbrochen ausgefรผhrt wird und die Anweisungen beliebig oft wiederholt, wird als Endlosschleife bezeichnet. Eine Endlosschleife wird auch als โ€žEndlosschleifeโ€œ bezeichnet. Im Folgenden sind einige Merkmale einer Endlosschleife aufgefรผhrt:

  1. Es ist keine Abbruchbedingung angegeben.
  2. Die festgelegten Bedingungen werden nie erfรผllt.

Die angegebene Bedingung bestimmt, ob der Schleifenkรถrper ausgefรผhrt wird oder nicht.

Die Programmiersprache โ€žCโ€œ bietet uns drei Arten von Schleifenkonstrukten:

  1. Die while-Schleife
  2. Die do-while-Schleife
  3. Die for-Schleife
Sr. Nr. Schleifentyp Beschreibung
1. While-Schleife In einer While-Schleife wird eine Bedingung ausgewertet, bevor ein Schleifenkรถrper verarbeitet wird. Wenn eine Bedingung wahr ist, wird nur dann der Hauptteil einer Schleife ausgefรผhrt.
2. Do-While-Schleife In einer doโ€ฆwhile-Schleife wird die Bedingung immer nach dem Schleifenkรถrper ausgefรผhrt. Man spricht auch von einer ausgangsgesteuerten Schleife.
3. Fรผr Schleife In einer for-Schleife wird der Anfangswert nur einmal ermittelt. AnschlieรŸend wird die Bedingung geprรผft und der Zรคhler nach jeder Iteration mit einem festgelegten Wert verglichen.ping Die for-Schleife wird beendet, wenn false zurรผckgegeben wird.

While-Schleife in C

Eine while-Schleife ist die einfachste Schleife.ping Struktur. Die Syntax der While-Schleife in der Programmiersprache C lautet wie folgt:

Syntax der While-Schleife in C

while (condition) {
             statements;
}

Es handelt sich um eine eintrittsgesteuerte Schleife. In einer While-Schleife wird eine Bedingung ausgewertet, bevor ein Schleifenkรถrper verarbeitet wird. Wenn eine Bedingung wahr ist, wird nur dann der Hauptteil einer Schleife ausgefรผhrt. Nachdem der Hauptteil einer Schleife ausgefรผhrt wurde, kehrt die Steuerung wieder zum Anfang zurรผck und die Bedingung wird รผberprรผft, ob sie wahr ist. Derselbe Prozess wird ausgefรผhrt, bis die Bedingung falsch wird. Sobald die Bedingung falsch wird, verlรคsst die Steuerung die Schleife.

Nach dem Verlassen der Schleife geht die Steuerung zu den Anweisungen รผber, die unmittelbar nach der Schleife stehen. Der Rumpf einer Schleife kann mehr als eine Anweisung enthalten. Wenn es nur eine Anweisung enthรคlt, sind die geschweiften Klammern nicht zwingend erforderlich. Es empfiehlt sich jedoch, die geschweiften Klammern zu verwenden, auch wenn der Text nur eine einzige Aussage enthรคlt.

Wenn in einer While-Schleife die Bedingung nicht wahr ist, wird der Schleifenkรถrper nicht einmal ausgefรผhrt. Anders ist es bei der do-while-Schleife, die wir gleich sehen werden.

Das folgende Programm veranschaulicht eine While-Schleife im C-Programmierbeispiel:

#include<stdio.h>
#include<conio.h>
int main()
{
	int num=1;	//initializing the variable
	while(num<=10)	//while loop with condition
	{
		printf("%d\n",num);
		num++;		//incrementing operation
	}
	return 0;
}

Ausgang:

1
2
3
4
5
6
7
8
9
10

Das obige Programm veranschaulicht die Verwendung einer While-Schleife. Im obigen Programm haben wir mithilfe einer While-Schleife Zahlenreihen von 1 bis 10 gedruckt.

While-Schleife in C

While-Schleife in der C-Programmierung

  1. Wir haben initialisiert Variable Die Variable `num` hat den Wert 1. Da wir die Zahlen von 1 bis 10 ausgeben mรถchten, wird die Variable mit dem Wert 1 initialisiert. Wenn Sie die Zahlen ab 0 ausgeben mรถchten, weisen Sie ihr bei der Initialisierung den Wert 0 zu.
  2. In einer while-Schleife haben wir eine Bedingung (num<=10) bereitgestellt, was bedeutet, dass die Schleife den Rumpf ausfรผhrt, bis der Wert von num 10 wird. Danach wird die Schleife beendet und die Steuerung wird auรŸerhalb der Schleife liegen.
  3. Im Hauptteil einer Schleife haben wir eine Druckfunktion zum Drucken unserer Nummer und eine Inkrementoperation zum Erhรถhen des Werts pro Ausfรผhrung einer Schleife. Der Anfangswert von num ist 1, nach der Ausfรผhrung wird er 2 und bei der nรคchsten Ausfรผhrung wird er 3. Dieser Vorgang wird fortgesetzt, bis der Wert 10 erreicht. Dann wird die Reihe auf der Konsole gedruckt und die Schleife beendet.

'\n' wird zu Formatierungszwecken verwendet, was bedeutet, dass der Wert in einer neuen Zeile ausgegeben wird.

Do-While-Schleife in C

Eine doโ€ฆwhile-Schleife in C รคhnelt der while-Schleife, auรŸer dass die Bedingung immer nach dem Schleifenkรถrper ausgefรผhrt wird. Man spricht auch von einer ausgangsgesteuerten Schleife.

Die Syntax der do while-Schleife in der Programmiersprache C lautet wie folgt:

Syntax der Do-While-Schleife in C

 do {
  statements
} while (expression);

Wie wir in einer while-Schleife gesehen haben, wird der Hauptteil genau dann ausgefรผhrt, wenn die Bedingung erfรผllt ist. In einigen Fรคllen mรผssen wir den Hauptteil der Schleife mindestens einmal ausfรผhren, auch wenn die Bedingung falsch ist. Diese Art von Operation kann durch die Verwendung einer do-while-Schleife erreicht werden.

In der do-while-Schleife wird der Hauptteil einer Schleife immer mindestens einmal ausgefรผhrt. Nachdem der Hauptteil ausgefรผhrt wurde, wird die Bedingung รผberprรผft. Wenn die Bedingung erfรผllt ist, wird der Hauptteil einer Schleife erneut ausgefรผhrt, andernfalls wird die Steuerung aus der Schleife รผbergeben.

ร„hnlich wie bei der while-Schleife werden die Anweisungen, die unmittelbar nach der Schleife stehen, ausgefรผhrt, sobald die Steuerung die Schleife verlรคsst.

Der entscheidende Unterschied zwischen der while- und der do-while-Schleife besteht darin, dass in der while-Schleife das while am Anfang geschrieben wird. In der do-while-Schleife wird die while-Bedingung am Ende geschrieben und mit einem Semikolon (;) abgeschlossen.

Das folgende Schleifenprogramm in C veranschaulicht die Funktionsweise einer do-while-Schleife:

Unten sehen Sie ein Beispiel fรผr eine Do-While-Schleife in C zum Drucken einer Tabelle mit Nummer 2:

#include<stdio.h>
#include<conio.h>
int main()
{
	int num=1;	//initializing the variable
	do	//do-while loop 
	{
		printf("%d\n",2*num);
		num++;		//incrementing operation
	}while(num<=10);
	return 0;
}

Ausgang:

2
4
6
8
10
12
14
16
18
20

Im obigen Beispiel haben wir die Multiplikationstabelle von 2 mithilfe einer do-while-Schleife gedruckt. Mal sehen, wie das Programm die Serie drucken konnte.

Do-While-Schleife in C

Do-While-Schleife in der C-Programmierung

  1. Zuerst haben wir eine Variable โ€žnumโ€œ mit dem Wert 1 initialisiert. AnschlieรŸend haben wir eine do-while-Schleife geschrieben.
  2. In einer Schleife haben wir eine Druckfunktion, die die Reihe druckt, indem sie den Wert von num mit 2 multipliziert.
  3. Nach jeder Erhรถhung erhรถht sich der Wert von num um 1 und wird auf dem Bildschirm ausgedruckt.
  4. Anfangs ist der Wert von num 1. Im Hauptteil einer Schleife wird die Druckfunktion folgendermaรŸen ausgefรผhrt: 2*num, wobei num=1, dann 2*1=2, daher wird der Wert zwei gedruckt. Dies wird so lange fortgesetzt, bis der Wert von num 10 wird. Danach wird die Schleife beendet und eine Anweisung ausgefรผhrt, die sich unmittelbar nach der Schleife befindet. Geben Sie in diesem Fall 0 zurรผck.

For-Schleife in C

Eine for-Schleife ist eine effizientere Schleifenstruktur in der C-Programmierung. Die allgemeine Struktur der for-Schleifensyntax in C ist wie folgt:

Syntax der For-Schleife in C

for (initial value; condition; incrementation or decrementation ) 
{
  statements;
}
  1. Der Anfangswert der for-Schleife wird nur einmal ausgefรผhrt.
  2. Die Bedingung ist ein boolescher Ausdruck, der den Zรคhler nach jeder Iteration mit einem festen Wert vergleicht und stoppt.ping Die for-Schleife wird beendet, wenn false zurรผckgegeben wird.
  3. Durch die Inkrementierung/Dekrementierung wird der Zรคhler um einen eingestellten Wert erhรถht (oder verringert).

Das folgende Programm veranschaulicht die For-Schleife im C-Programmierbeispiel:

#include<stdio.h>
int main()
{
	int number;
	for(number=1;number<=10;number++)	//for loop to print 1-10 numbers
	{
		printf("%d\n",number);		//to print the number
	}
	return 0;
}

Ausgang:

1
2
3
4
5
6
7
8
9
10

Das obige Programm druckt die Zahlenreihe von 1 bis 10 mithilfe einer for-Schleife.

For-Schleife in C

For-Schleife in der C-Programmierung

  1. Wir haben eine Variable vom Datentyp int deklariert, um Werte zu speichern.
  2. In der for-Schleife haben wir im Initialisierungsteil der Variablennummer den Wert 1 zugewiesen. Im Bedingungsteil haben wir unsere Bedingung und dann den Inkrementteil angegeben.
  3. Im Hauptteil einer Schleife haben wir eine Druckfunktion, um die Zahlen in einer neuen Zeile in der Konsole zu drucken. Wir haben den Wert 2 in โ€žnumberโ€œ gespeichert. Nach der ersten Iteration wird der Wert erhรถht und wird 2. Jetzt hat die Variable โ€žnumberโ€œ den Wert 10. Die Bedingung wird erneut รผberprรผft und da die Bedingung erfรผllt ist, wird die Schleife ausgefรผhrt und 1 auf dem Bildschirm gedruckt. Diese Schleife wird so lange ausgefรผhrt, bis der Wert der Variablen 10 erreicht. Danach wird die Schleife beendet und eine Reihe von XNUMX-XNUMX wird auf dem Bildschirm gedruckt.

In C kann die for-Schleife in jedem Teil mehrere durch Kommas getrennte Ausdrรผcke enthalten.

Beispielsweise:

for (x = 0, y = num; x < y; i++, y--) { 
  statements; 
}

AuรŸerdem kรถnnen wir den Anfangswertausdruck, die Bedingung und/oder das Inkrement รผberspringen, indem wir ein Semikolon hinzufรผgen.

Beispielsweise:

int i=0;
int max = 10;
for (; i < max; i++) {
  printf("%d\n", i);
}

Beachten Sie, dass Schleifen auch dort verschachtelt werden kรถnnen, wo es eine รคuรŸere und eine innere Schleife gibt. Bei jeder Iteration der รคuรŸeren Schleife wiederholt die innere Schleife ihren gesamten Zyklus.

Betrachten Sie das folgende Beispiel mit mehreren Bedingungen in einer For-Schleife, das verschachtelte For-Schleifen in der C-Programmierung verwendet, um eine Multiplikationstabelle auszugeben:

#include <stdio.h>
int main() {
int i, j;
int table = 2;
int max = 5;
for (i = 1; i <= table; i++) { // outer loop
  for (j = 0; j <= max; j++) { // inner loop
    printf("%d x %d = %d\n", i, j, i*j);
  }
  printf("\n"); /* blank line between tables */
}}

Ausgang:

1 x 0 = 0
1 x 1 = 1
1 x 2 = 2
1 x 3 = 3
1 x 4 = 4
1 x 5 = 5

2 x 0 = 0
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10

Die Verschachtelung von for-Schleifen ist beliebig tief mรถglich. Die verschachtelten Schleifen sollten ausreichend eingerรผckt sein, um den Code lesbar zu machen. In manchen C-Versionen ist die Verschachtelung auf 15 Schleifen beschrรคnkt, in anderen sind mehr mรถglich.

Die verschachtelten Schleifen werden hauptsรคchlich in Array-Anwendungen verwendet, die wir in weiteren Tutorials sehen werden.

Neben den drei Schleifentypen bietet C zwei Anweisungen, die den Ablauf einer Schleife von innen heraus verรคndern.

Break-Anweisung in C

Die break-Anweisung wird hauptsรคchlich in verwendet switch-AnweisungEs ist auch nรผtzlich, um sofort anzuhalten.ping eine Schleife.

Wir betrachten das folgende Programm, das einen Break zum Verlassen einer While-Schleife einfรผhrt:

#include <stdio.h>
int main() {
int num = 5;
while (num > 0) {
  if (num == 3)
    break;
  printf("%d\n", num);
  num--;
}}

Ausgang:

5
4

Fortsetzung der Aussage in C

Wenn Sie zur nรคchsten Iteration springen, aber in der Schleife bleiben mรถchten, sollten Sie die continue-Anweisung verwenden.

Beispielsweise:

#include <stdio.h>
int main() {
int nb = 7;
while (nb > 0) {
  nb--;
  if (nb == 5)
    continue;
 printf("%d\n", nb);
}}

Ausgang:

6
4
3
2
1

Daher wird der Wert 5 รผbersprungen.

Welche Schleife soll ausgewรคhlt werden?

Die Auswahl einer Schleife ist fรผr einen Programmierer immer eine schwierige Aufgabe. Um eine Schleife auszuwรคhlen, fรผhren Sie die folgenden Schritte aus:

  1. Analysieren Sie das Problem und prรผfen Sie, ob eine Vortest- oder Nachtestschleife erforderlich ist.
  2. Falls ein Vortest erforderlich ist, verwenden Sie eine while- oder for-Schleife.
  3. Wenn ein Nachtest erforderlich ist, verwenden Sie eine Do-While-Schleife.

Hรคufig gestellte Fragen

Eine Endlosschleife lรคuft endlos, wenn ihre Bedingung nie falsch wird. Dies lรคsst sich verhindern, indem man die Schleifenvariable innerhalb des Schleifenkรถrpers aktualisiert und sicherstellt, dass die Bedingung irgendwann erfรผllt werden kann, oder indem man zur Sicherheit eine `break`-Anweisung hinzufรผgt.

Die `break`-Anweisung beendet eine Schleife vollstรคndig und springt zur ersten Anweisung nach ihr. Die `continue`-Anweisung รผberspringt lediglich die verbleibenden Anweisungen der aktuellen Iteration und springt zum nรคchsten Schleifendurchlauf.

Standard C hat keine eingebaute for-each-Schleife oder bereichsbasierte Schleife wie C++ or PythonMan durchlรคuft ein Array manuell mit einer for- oder while-Schleife, indem man einen Index oder einen Zeiger verwendet, der jedes Element durchlรคuft.

Nein. Die goto-Anweisung fรผhrt einen unbedingten Sprung zu einer markierten Zeile aus und kann lo imitieren.pingEs handelt sich jedoch nicht um eine strukturierte Schleife. Die Verwendung von for, while oder do-while sorgt fรผr einen wesentlich lesbareren Code.

Der Kommaoperator ermรถglicht es einer for-Schleife, mehrere Variablen gleichzeitig zu verwalten. In for (x = 0, y = n; x < y; x++, yโ€“) werden sowohl im Initialisierungs- als auch im Aktualisierungsteil bei jedem Durchlauf zwei Ausdrรผcke ausgefรผhrt.

Ja. Kombinieren Sie Bedingungen mit den logischen Operatoren UND (&&) und ODER (||) innerhalb der Klammern. Zum Beispiel: while (a < 10 && b > 0) hรคlt die Schleife aufrecht.ping nur solange beide Bedingungen erfรผllt sind.

Ja. KI-Programmierassistenten kรถnnen while-, do-while- und for-Schleifen anhand einer einfachen Beschreibung erstellen, Off-by-One-Fehler erkennen und Bedingungen kennzeichnen, die mรถglicherweise endlos laufen. RevDas Ablesen der Ausgabe bleibt unerlรคsslich, da die generierte Logik nicht immer korrekt ist.

GitHub-Copilot Es schlรคgt wรคhrend der Eingabe vollstรคndige Schleifenstrukturen vor, vervollstรคndigt Zรคhler und Bedingungen automatisch und generiert Verschachtelungsmuster anhand kurzer Kommentare. Es funktioniert in gรคngigen Editoren und beschleunigt wiederkehrende C-Programmieraufgaben.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: