Một lệnh if trong C# có thể được theo sau bởi một lệnh else tùy ý, mà thực hiện khi biểu thức logic là false.
Sau đây là cú pháp của một lệnh if…else trong C#:
if(biểu_thức) { /* các lệnh được thực thi nếu biểu thức là true */ } else { /* các lệnh được thực thi nếu biểu thức là false */ }
Nếu biểu thức logic được ước lượng là true, thì khi đó khối if sẽ được thực thi, nếu không thì khối else sẽ được thực thi.
Sơ đồ
Ví dụ
using System; namespace HoclaptrinhCsharp { class TestCsharp { static void Main(string[] args) { Console.WriteLine("Lenh if...else trong C#"); Console.WriteLine("-------------------------------"); /* phan dinh nghia bien cuc bo */ int a = 100; /* kiem tra dieu kien */ if (a > 20) { /* neu dieu kien la true thi in dong sau: */ Console.WriteLine("a nho hon 20"); } else { /* neu dieu kien la false thi in dong sau: */ Console.WriteLine("a khong nho hon 20"); } Console.WriteLine("Gia tri cua a la: {0}", a); Console.ReadLine(); Console.ReadKey(); } } }
Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.
Biên dịch và chạy chương trình C# trên sẽ cho kết quả sau:
Lệnh if…else if…else trong C#
Một lệnh if có thể được theo sau bởi một lệnh else if…else tùy ý, mà rất có ích để kiểm tra các điều kiện đa dạng.
Khi sử dụng lệnh if, else if, else, có một số điểm chính cần ghi nhớ:
Một lệnh if có 0 hoặc một lệnh else và chúng phải theo sau bởi bất kỳ lệnh else if nào.
Một lệnh if có 0 tới nhiều lệnh else if và chúng phải ở trước lệnh else.
Một khi lệnh else if thực hiện, nó sẽ không kiểm tra lại bất kỳ lệnh else if hoặc lệnh else còn lại khác.
Cú pháp của một lệnh if...else if...else trong C# là:
if(biểu_thức 1) { /* các lệnh được thực thi nếu biểu thức 1 là true */ } else if( biểu_thức 2) { /* các lệnh được thực thi nếu biểu thức 2 là true */ } else if( biểu_thức 3) { /* các lệnh được thực thi nếu biểu thức 3 là true */ } else { /* các lệnh được thực thi nếu không có biểu thức nào là true */ }
Ví dụ
using System; namespace HoclaptrinhCsharp { class TestCsharp { static void Main(string[] args) { Console.WriteLine("Lenh if...else trong C#"); Console.WriteLine("-------------------------------"); /* phan dinh nghia bien cuc bo */ int a = 100; /* kiem tra dieu kien */ if (a == 10) { /* neu dieu kien la true thi in dong sau: */ Console.WriteLine("Gia tri cua a la 10"); } else if (a == 20) { /* neu dieu kien cua else if nay la true */ Console.WriteLine("Gia tri cua a la 20"); } else if (a == 30) { /* neu dieu kien cua else if nay la true */ Console.WriteLine("Gia tri cua a la 30"); } else { /* neu khong co dieu kien nao o tren la true */ Console.WriteLine("Khong co dieu kien nao o tren la true"); } Console.WriteLine("Gia tri chinh xac cua a la: {0}", a); Console.ReadLine(); Console.ReadKey(); } } }
Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.
Biên dịch và chạy chương trình C# trên sẽ cho kết quả sau: