In diesem Artikel erfahren Sie, wie Sie if, if… else, if… else if-Anweisungen in C # verwenden, um den Ablauf der Programmausführung zu steuern.
Das Testen einer Bedingung ist bei der Programmierung unvermeidlich. Wir werden oft mit Situationen konfrontiert sein, in denen wir Bedingungen testen müssen (ob dies der Fall ist true
oder nicht false
), um den Programmfluss zu steuern. Diese Bedingungen können durch Benutzereingaben, Zeitfaktor, aktuelle Umgebung, in der das Programm ausgeführt wird usw. beeinflusst werden.
In diesem Artikel lernen wir, Bedingungen mit der if-Anweisung in C # zu testen.
C # if (wenn-dann) Anweisung
Die Anweisung C # if-then führt einen Codeblock aus, wenn die angegebene Bedingung erfüllt ist. Die Syntax der if-then-Anweisung in C # lautet:
if (Boolescher Ausdruck) (// Anweisungen werden ausgeführt, wenn der Boolesche Ausdruck wahr ist)
- Der Boolesche Ausdruck gibt entweder true oder zurück
false
. - Wenn der Boolesche Ausdruck zurückgegeben wird
true
, werden die Anweisungen im Hauptteil von if (inside(… )
) ausgeführt. - Wenn der Boolesche Ausdruck zurückgegeben wird
false
, werden die Anweisungen im Hauptteil von if ignoriert.
Beispielsweise,
if (Nummer <5) (Nummer + = 5;)
In diesem Beispiel die Anweisung
Zahl + = 5;
wird nur ausgeführt, wenn der Wert der Zahl kleiner als 5 ist.
Erinnerst du dich an den Operator + =?
Wie funktioniert die Anweisung?
Beispiel 1: C # if-Anweisung
using System; namespace Conditional ( class IfStatement ( public static void Main(string() args) ( int number = 2; if (number < 5) ( Console.WriteLine("(0) is less than 5", number); ) Console.WriteLine("This statement is always executed."); ) ) )
Wenn wir das Programm ausführen, lautet die Ausgabe:
2 ist kleiner als 5 Diese Anweisung wird immer ausgeführt.
Der Wert von number wird auf 2 initialisiert. Der Ausdruck number < 5
wird also auf ausgewertet true
. Daher wird der Code innerhalb des if-Blocks ausgeführt. Der Code nach der if-Anweisung wird unabhängig vom Ausdruck immer ausgeführt.
Nun wird der Wert der Zahl als etwas größer ändern 5
, sagen 10
. Wenn wir das Programm ausführen, lautet die Ausgabe:
Diese Anweisung wird immer ausgeführt.
Der Ausdruck number < 5
wird zurückgegeben false
, daher der darin enthaltene Code, wenn der Block nicht ausgeführt wird.
C # if… else (wenn-dann-sonst) Anweisung
Die if-Anweisung in C # kann eine optionale else-Anweisung haben. Der Codeblock in der else-Anweisung wird ausgeführt, wenn der Ausdruck ausgewertet wird false
.
Die Syntax der if… else-Anweisung in C # lautet:
if (Boolescher Ausdruck) (// Anweisungen werden ausgeführt, wenn der Boolesche Ausdruck wahr ist) else (// Anweisungen, die ausgeführt werden, wenn der Boolesche Ausdruck falsch ist)
Beispielsweise,
if (Nummer <5) (Nummer + = 5;) else (Nummer - = 5;)
In diesem Beispiel die Anweisung
Zahl + = 5;
wird nur ausgeführt, wenn der Wert von number kleiner als ist 5
.
Die Aussage
Zahl - = 5;
wird ausgeführt, wenn der Wert von number größer oder gleich ist 5
.
Wie wäre es, wenn… else Statement funktioniert?
Beispiel 2: C # if… else-Anweisung
using System; namespace Conditional ( class IfElseStatement ( public static void Main(string() args) ( int number = 12; if (number < 5) ( Console.WriteLine("(0) is less than 5", number); ) else ( Console.WriteLine("(0) is greater than or equal to 5", number); ) Console.WriteLine("This statement is always executed."); ) ) )
Wenn wir das Programm ausführen, lautet die Ausgabe:
12 ist größer oder gleich 5 Diese Anweisung wird immer ausgeführt.
Hier wird der Wert der Zahl auf initialisiert 12
. So wird der Ausdruck number < 5
ausgewertet false
. Daher wird der Code innerhalb des else-Blocks ausgeführt. Der Code nach der if… else-Anweisung wird unabhängig vom Ausdruck immer ausgeführt.
Nun, weniger den Wert der Zahl zu etwas ändern , als 5
, sagen 2
. Wenn wir das Programm ausführen, lautet die Ausgabe:
2 ist kleiner als 5 Diese Anweisung wird immer ausgeführt.
Der Ausdruck number < 5
gibt true zurück, daher der darin enthaltene Code, wenn der Block ausgeführt wird.
Der ternäre Operator in C # bietet eine Verknüpfung für die Anweisung C # if… else.
C # if… else if (if-then-else if) Anweisung
Wenn wir nur eine Bedingung testen müssen, funktioniert die if-then- und if-then-else-Anweisung einwandfrei. Aber was ist, wenn wir eine Mehrfachbedingung haben, um einen der vielen Codeblöcke zu testen und auszuführen?
For such case, we can use if… else if statement in C#. The syntax for if… else if statement is:
if (boolean-expression-1) ( // statements executed if boolean-expression-1 is true ) else if (boolean-expression-2) ( // statements executed if boolean-expression-2 is true ) else if (boolean-expression-3) ( // statements executed if boolean-expression-3 is true )… else ( // statements executed if all above expressions are false )
The if… else if statement is executed from the top to bottom. As soon as a test expression is true
, the code inside of that if ( or else if ) block is executed. Then the control jumps out of the if… else if block.
If none of the expression is true
, the code inside the else block is executed.
Alternatively, we can use switch statement in such condition.
Example 3: C# if… else if Statement
using System; namespace Conditional ( class IfElseIfStatement ( public static void Main(string() args) ( int number = 12; if (number 5) ( Console.WriteLine("(0) is greater than 5", number); ) else ( Console.WriteLine("(0) is equal to 5"); ) ) ) )
When we run the program, the output will be:
12 is greater than 5
The value of number is initialized to 12
. The first test expression number < 5
is false
, so the control will move to the else if block. The test expression number> 5
is true
hence the block of code inside else if will be executed.
Similarly, we can change the value of number
to alter the flow of execution.
Nested if… else Statement
An if… else statement can exist within another if… else statement. Such statements are called nested if… else statement.
The general structure of nested if… else statement is:
if (Boolescher Ausdruck) (if (verschachtelter Ausdruck-1) (// auszuführender Code) else (// auszuführender Code)) else (if (verschachtelter Ausdruck-2) (// auszuführender Code ) else (// auszuführender Code))
Verschachtelt, wenn Anweisungen im Allgemeinen verwendet werden, wenn eine Bedingung gefolgt von einer anderen getestet werden muss. Wenn in einer verschachtelten if-Anweisung die äußere if-Anweisung true zurückgibt, wird sie in den Body eingegeben, um die innere if-Anweisung zu überprüfen.
Beispiel 4: Verschachtelte if… else-Anweisung
Das folgende Programm berechnet die größte Zahl unter 3 Zahlen mit der verschachtelten if… else-Anweisung.
using System; namespace Conditional ( class Nested ( public static void Main(string() args) ( int first = 7, second = -23, third = 13; if (first> second) ( if (firstNumber> third) ( Console.WriteLine("(0) is the largest", first); ) else ( Console.WriteLine("(0) is the largest", third); ) ) else ( if (second> third) ( Console.WriteLine("(0) is the largest", second); ) else ( Console.WriteLine("(0) is the largest", third); ) ) ) ) )
Wenn wir das Programm ausführen, lautet die Ausgabe:
13 ist der größte