C Bedingte Anweisungen meistern: If, Else und mehr
C Bedingte Anweisungen meistern: If, Else und mehr
Dieser umfassende Leitfaden führt Sie durch die Grundlagen von C's if, else und verschachtelten bedingten Anweisungen, komplett mit klaren Beispielen und Best-Practice-Tipps.
Video: C if-else Anweisung
Sehen Sie sich das prägnante Tutorial unten an, um diese Konzepte in Aktion zu sehen.
C if Anweisung
Die if Anweisung in C folgt dieser Syntax:
if (test expression) { // code to execute when the condition is true }
Wie die if Anweisung funktioniert
Der Testausdruck in Klammern wird ausgewertet. Wenn das Ergebnis ungleich null (wahr) ist, wird der Codeblock innerhalb der Klammern ausgeführt; wenn null (falsch), wird er übersprungen.
- Wahr: führt den Körper aus.
- Falsch: überspringt den Körper.

Erfahren Sie mehr über truthy und falsy Werte in C's relationalen und logischen Operatoren auf Wikipedia oder GeeksforGeeks.
Beispiel 1: Einfache if Anweisung
// Programm zur Anzeige einer Zahl, wenn sie negativ ist #include <stdio.h> int main() { int number; printf("Ganze Zahl eingeben: "); scanf("%d", &number); // wahr wenn Zahl kleiner als 0 if (number < 0) { printf("Sie haben %d eingegeben.\n", number); } printf("Die if Anweisung ist einfach."); return 0; }
Ausgabe 1
Ganze Zahl eingeben: -2 Sie haben -2 eingegeben. Die if Anweisung ist einfach.
Wenn der Benutzer -2 eingibt, wird der Ausdruck number < 0 zu wahr ausgewertet, sodass die Nachricht ausgegeben wird.
Ausgabe 2
Ganze Zahl eingeben: 5 Die if Anweisung ist einfach.
Mit 5 wird der Ausdruck zu falsch ausgewertet, wodurch der printf innerhalb des Blocks übersprungen wird.
C if…else Anweisung
Das Hinzufügen eines else Blocks ermöglicht es Ihnen, alternativen Code für den falschen Fall anzugeben. Syntax:
if (test expression) { // code when true } else { // code when false }
Wie die if…else Anweisung funktioniert
• Wenn der Test wahr ist: führt den if Block aus und überspringt else. • Wenn der Test falsch ist: führt den else Block aus und überspringt if.

Beispiel 2: Prüfen auf Ungerade oder Gerade
// Prüfen, ob eine Ganzzahl ungerade oder gerade ist #include <stdio.h> int main() { int number; printf("Ganze Zahl eingeben: "); scanf("%d", &number); // Wahr wenn Rest 0 ist if (number % 2 == 0) { printf("%d ist eine gerade Ganzzahl.", number); } else { printf("%d ist eine ungerade Ganzzahl.", number); } return 0; }
Ausgabe
Ganze Zahl eingeben: 7 7 ist eine ungerade Ganzzahl.
Hier bestimmt der Modulo-Operator die Parität, und der else Block behandelt den ungeraden Fall.
C if…else Leiter
Wenn mehrere Bedingungen nacheinander ausgewertet werden müssen, ist ein if…else if…else Leiter ideal.
Syntax des Leiters
if (condition1) { // statements } else if (condition2) { // statements } else if (condition3) { // statements } else { // statements }
Beispiel 3: Zwei Ganzzahlen vergleichen
// Programm zum Vergleichen zweier Ganzzahlen #include <stdio.h> int main() { int number1, number2; printf("Zwei Ganzzahlen eingeben: "); scanf("%d %d", &number1, &number2); if (number1 == number2) { printf("Ergebnis: %d = %d", number1, number2); } else if (number1 > number2) { printf("Ergebnis: %d > %d", number1, number2); } else { printf("Ergebnis: %d < %d", number1, number2); } return 0; }
Ausgabe
Zwei Ganzzahlen eingeben: 12 23 Ergebnis: 12 < 23
Verschachteltes if…else
Das Einbetten eines if…else in ein anderes ermöglicht feinkörnige Verzweigungen ohne umfangreichen Leiter.
Beispiel 4: Verschachtelter Vergleich
#include <stdio.h> int main() { int number1, number2; printf("Zwei Ganzzahlen eingeben: "); scanf("%d %d", &number1, &number2); if (number1 >= number2) { if (number1 == number2) { printf("Ergebnis: %d = %d", number1, number2); } else { printf("Ergebnis: %d > %d", number1, number2); } } else { printf("Ergebnis: %d < %d", number1, number2); } return 0; }
Wenn ein if…else Block nur eine Anweisung enthält, sind Klammern {} optional, aber ihre Verwendung verbessert die Lesbarkeit und reduziert Fehler.
Beispiel:
if (a > b) printf("Hallo"); printf("Hi");
C Sprache
- Bedingte Logik in C# meistern: If, If-Else, If-ElseIf und verschachtelte If-Anweisungen
- C# Switch Statement meistern: Syntax, Beispiele & Best Practices
- C# Break Statement: Wie und wann man es einsetzt
- C# Continue Statement meistern: Schleifeniterationen effektiv überspringen
- C++-Bedingungsanweisungen meistern: if, if...else und verschachteltes if...else erklärt
- Die C++ break-Anweisung meistern
- C++ continue-Anweisung meistern: Praxisbeispiele & Schleifenkontrolle
- C++ switch-case-Anweisung meistern: Syntax, Ablauf und praktische Beispiele
- Python pass-Statement meistern: Praxisleitfaden
- C-Grundsyntax meistern: Tokens, Struktur und Semikolons