Ebben a cikkben megtudhatjuk, hogyan kell használni, ha… másként, ha… else if utasítás a C # -ben a programunk végrehajtásának folyamatának szabályozására.
A feltétel tesztelése elkerülhetetlen a programozás során. Gyakran szembesülünk olyan helyzetekkel, amikor tesztelnünk kell a körülményeket (legyen az true
vagy nem false
) a program folyamatának irányításához. Ezeket a körülményeket befolyásolhatja a felhasználó bevitele, időbeli tényezője, a program aktuális környezete stb.
Ebben a cikkben megtanuljuk tesztelni a feltételeket az if utasítás használatával a C # -ben.
C # if (ha-akkor) nyilatkozat
A C # if-then utasítás végrehajt egy kódblokkot, ha az adott feltétel igaz. Az if-then utasítás szintaxisa a C # -ben:
if (logikai kifejezés) (// utasítások végrehajtása, ha a logikai kifejezés igaz)
- A logikai kifejezés igaz vagy
false
. - Ha a logikai kifejezés visszatér
true
, akkor a test belsejében lévő utasítások(… )
végrehajtásra kerülnek. - Ha a logikai kifejezés visszatér
false
, az if törzsében lévő utasításokat a rendszer figyelmen kívül hagyja.
Például,
if (szám <5) (szám + = 5;)
Ebben a példában az állítás
szám + = 5;
csak akkor kerül végrehajtásra, ha a szám értéke kevesebb, mint 5.
Emlékszel a + = operátorra?
Hogyan működik, ha az utasítás működik?
1. példa: C # if utasítás
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."); ) ) )
A program futtatásakor a kimenet a következő lesz:
2 kisebb, mint 5 Ez az utasítás mindig végrehajtásra kerül.
A szám értéke 2-re inicializálódik. Tehát a kifejezést number < 5
kiértékelik true
. Ezért az if blokk belsejében lévő kód végrehajtásra kerül. Az if utasítás utáni kód mindig végrehajtásra kerül, függetlenül a kifejezéstől.
Most változtassa meg a szám értékét valami nagyobbra, mint 5
mondjuk 10
. A program futtatásakor a kimenet a következő lesz:
Ez az utasítás mindig végrehajtásra kerül.
A kifejezés number < 5
visszatér false
, ezért a belsejében lévő kód, ha a blokk nem kerül végrehajtásra.
C # if… else (if-then-else) nyilatkozat
A C # számú if utasításnak lehet opcionális else utasítása. Az else utasításon belüli kódblokk végrehajtásra kerül, ha a kifejezést értékelik false
.
Az if… else utasítás szintaxisa a C # -ben:
if (logikai kifejezés) (// utasítások végrehajtva, ha a logikai kifejezések igazak) else (// utasítások végrehajtva, ha a logikai kifejezések hamisak)
Például,
if (szám <5) (szám + = 5;) else (szám - = 5;)
Ebben a példában az állítás
szám + = 5;
csak akkor kerül végrehajtásra, ha a szám értéke kisebb, mint 5
.
Az állítás
szám - = 5;
akkor kerül végrehajtásra, ha a szám értéke nagyobb vagy egyenlő 5
.
Mi lenne, ha… másképpen működik a nyilatkozat?
2. példa: C # if… else nyilatkozat
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."); ) ) )
A program futtatásakor a kimenet a következő lesz:
A 12 nagyobb vagy egyenlő 5-vel. Ez az utasítás mindig végrehajtásra kerül.
Itt a szám értékét inicializáljuk 12
. Tehát a kifejezést number < 5
értékelik false
. Ezért a másik blokkban lévő kód végrehajtásra kerül. Az if… else utasítás utáni kód mindig végrehajtásra kerül, függetlenül a kifejezéstől.
Most változtassa meg a szám értékét valamivel kisebbre, mint 5
mondjuk 2
. A program futtatásakor a kimenet a következő lesz:
2 kisebb, mint 5 Ez az utasítás mindig végrehajtásra kerül.
A kifejezés number < 5
igazra tér vissza, ezért a blokk végrehajtásakor a benne lévő kód.
A C # háromhuzamos operátora parancsikont ad a C # if… else utasításhoz.
C # if… else if (if-then-else if) nyilatkozat
Ha csak egy feltételt kell tesztelnünk, az if-then és if-then-else utasítás jól működik. De mi van akkor, ha több feltételünk van a sok kódblokk egyikének tesztelésére és végrehajtására.
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 (logikai kifejezés) (if (beágyazott kifejezés-1) (// végrehajtandó kód) else (// végrehajtandó kód)) else (if (beágyazott kifejezés-2) (// végrehajtandó kód ) else (// végrehajtandó kód))
Beágyazott, ha általában olyan utasításokat használunk, amikor tesztelnünk kell az egyik feltételt, majd a másikat. A beágyazott if utasításban, ha a külső if utasítás igaz, akkor belép a testbe, hogy ellenőrizze a belső if utasítást.
4. példa: Beágyazott, ha… másként állítás
A következő program kiszámítja a legnagyobb számot 3 szám közül a beágyazott if… else utasítással.
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); ) ) ) ) )
A program futtatásakor a kimenet a következő lesz:
13 a legnagyobb