Trong bài viết này, chúng ta sẽ học cách sử dụng câu lệnh if, if… else, if… else if trong C # để điều khiển luồng thực thi chương trình của chúng ta.
Kiểm tra một điều kiện là không thể tránh khỏi trong lập trình. Chúng ta sẽ thường xuyên phải đối mặt với những tình huống mà chúng ta cần kiểm tra các điều kiện (cho dù đó là true
hay false
) để kiểm soát luồng chương trình. Các điều kiện này có thể bị ảnh hưởng bởi đầu vào của người dùng, yếu tố thời gian, môi trường hiện tại nơi chương trình đang chạy, v.v.
Trong bài viết này, chúng ta sẽ học cách kiểm tra các điều kiện bằng cách sử dụng câu lệnh if trong C #.
Câu lệnh C # if (if-then)
Câu lệnh if-then của C # sẽ thực thi một khối mã nếu điều kiện đã cho là đúng. Cú pháp của câu lệnh if-then trong C # là:
if (boolean-expression) (// câu lệnh được thực thi nếu biểu thức boolean là true)
- Biểu thức boolean sẽ trả về true hoặc
false
. - Nếu biểu thức boolean trả về
true
, các câu lệnh bên trong phần thân của if (bên trong(… )
) sẽ được thực thi. - Nếu biểu thức boolean trả về
false
, các câu lệnh bên trong phần thân của if sẽ bị bỏ qua.
Ví dụ,
if (number <5) (number + = 5;)
Trong ví dụ này, câu lệnh
số + = 5;
sẽ chỉ được thực thi nếu giá trị của số nhỏ hơn 5.
Nhớ toán tử + =?
Nếu câu lệnh hoạt động như thế nào?
Ví dụ 1: Câu lệnh if trong C #
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."); ) ) )
Khi chúng tôi chạy chương trình, kết quả đầu ra sẽ là:
2 nhỏ hơn 5 Câu lệnh này luôn được thực hiện.
Giá trị của số được khởi tạo là 2. Vì vậy, biểu thức number < 5
được đánh giá là true
. Do đó, mã bên trong khối if được thực thi. Đoạn mã sau câu lệnh if sẽ luôn được thực thi bất kể biểu thức.
Bây giờ, hãy thay đổi giá trị của số thành giá trị lớn hơn 5
, chẳng hạn 10
. Khi chúng tôi chạy chương trình, đầu ra sẽ là:
Câu lệnh này luôn được thực thi.
Biểu thức number < 5
sẽ trả về false
, do đó mã bên trong if khối sẽ không được thực thi.
Câu lệnh C # if… else (if-then-else)
Câu lệnh if trong C # có thể có một câu lệnh else tùy chọn. Khối mã bên trong câu lệnh else sẽ được thực thi nếu biểu thức được đánh giá là false
.
Cú pháp của câu lệnh if… else trong C # là:
if (boolean-expression) (// câu lệnh được thực thi nếu boolean-expression là true) else (// câu lệnh được thực thi nếu boolean-expression là false)
Ví dụ,
if (number <5) (number + = 5;) else (number - = 5;)
Trong ví dụ này, câu lệnh
số + = 5;
sẽ chỉ được thực thi nếu giá trị của số nhỏ hơn 5
.
Tuyên bố
số - = 5;
sẽ được thực thi nếu giá trị của số lớn hơn hoặc bằng 5
.
Nếu… Câu lệnh khác hoạt động như thế nào?
Ví dụ 2: Câu lệnh C # if… else
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."); ) ) )
Khi chúng tôi chạy chương trình, kết quả đầu ra sẽ là:
12 lớn hơn hoặc bằng 5 Câu lệnh này luôn được thực hiện.
Ở đây, giá trị của số được khởi tạo thành 12
. Vì vậy, biểu thức number < 5
được đánh giá là false
. Do đó, mã bên trong khối khác được thực thi. Đoạn mã sau câu lệnh if… else sẽ luôn được thực thi bất kể biểu thức.
Bây giờ, hãy thay đổi giá trị của số thành giá trị nhỏ hơn 5
, chẳng hạn 2
. Khi chúng tôi chạy chương trình, đầu ra sẽ là:
2 nhỏ hơn 5 Câu lệnh này luôn được thực hiện.
Biểu thức number < 5
sẽ trả về true, do đó mã bên trong khối if sẽ được thực thi.
Toán tử bậc ba trong C # cung cấp một phím tắt cho câu lệnh if… else trong C #.
Câu lệnh C # if… else if (if-then-else if)
Khi chúng ta chỉ có một điều kiện để kiểm tra, câu lệnh if-then và if-then-else hoạt động tốt. Nhưng điều gì sẽ xảy ra nếu chúng ta có nhiều điều kiện để kiểm tra và thực thi một trong nhiều khối mã.
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 (boolean-expression) (if (lồng nhau-biểu thức-1) (// mã được thực thi) else (// mã được thực thi)) else (if (lồng nhau-biểu thức-2) (// mã được thực thi ) else (// mã được thực thi))
Các câu lệnh if lồng nhau thường được sử dụng khi chúng ta phải kiểm tra một điều kiện sau đó là điều kiện khác. Trong một câu lệnh if lồng nhau, nếu câu lệnh if bên ngoài trả về true, nó sẽ đi vào phần thân để kiểm tra câu lệnh if bên trong.
Ví dụ 4: Câu lệnh if… else lồng nhau
Chương trình sau đây tính số lớn nhất trong 3 số bằng cách sử dụng câu lệnh if… else lồng nhau.
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); ) ) ) ) )
Khi chúng tôi chạy chương trình, kết quả đầu ra sẽ là:
13 là lớn nhất