C - Câu lệnh if-else

Xin chào các bạn đang học lập trình! Hôm nay, chúng ta sẽ cùng nhau khám phá một trong những khái niệm cơ bản nhất trong lập trình: câu lệnh if-else. Là người giáo viên khoa học máy tính gần gũi của bạn, tôi rất háo hức dẫn dắt các bạn trong hành trình này. Nào, hãy chuẩn bị đồ uống yêu thích của bạn, ngồi thoải mái, và cùng nhau bắt đầu cuộc phiêu lưu lập trình này nhé!

C - if...else statement

Câu lệnh if-else là gì?

Trước khi chúng ta đi vào chi tiết, hãy bắt đầu với một ví dụ trong cuộc sống thực tế. Hãy tưởng tượng bạn đang đứng ở một ngã rẽ. Bạn cần quyết định chọn con đường nào dựa trên một điều kiện cụ thể. Nếu trời nắng, bạn sẽ chọn con đường cảnh quan. Ngược lại, bạn sẽ chọn con đường ngắn hơn. Quá trình ra quyết định này chính xác là điều mà câu lệnh if-else thực hiện trong lập trình!

Câu lệnh if-else cho phép chương trình của bạn ra quyết định dựa trên một số điều kiện. Nó giống như việc bạn cho mã của bạn một não để suy nghĩ và hành động tương ứng.

Cú pháp của câu lệnh if-else

Bây giờ, hãy nhìn vào cách chúng ta viết câu lệnh if-else trong C. Đừng lo lắng nếu nó trông có vẻ lạ ban đầu - chúng ta sẽ phân tích nó từng bước!

if (condition) {
// Mã để thực thi nếu điều kiện là true
} else {
// Mã để thực thi nếu điều kiện là false
}

Hãy phân tích cú pháp này:

  1. Từ khóa if bắt đầu câu lệnh.
  2. condition được đặt trong dấu ngoặc tròn (). Đây là điều kiện chúng ta đang kiểm tra.
  3. Nếu điều kiện là true, mã trong dấu ngoặc {} đầu tiên sẽ được thực thi.
  4. Nếu điều kiện là false, mã sau từ khóa else (trong dấu ngoặc của nó) sẽ được thực thi.

Sơ đồ luồng của câu lệnh if-else

Để hình dung cách câu lệnh if-else hoạt động, hãy nhìn vào sơ đồ luồng:

+-------------+
|   Start     |
+-------------+
|
v
+-------------+
| Condition   |
|   Check     |
+-------------+
|
+---+---+
/         \
Yes /           \ No
/             \
v               v
+-------------+ +-------------+
|  Execute    | |  Execute    |
| 'if' block  | | 'else' block|
+-------------+ +-------------+
|               |
|               |
+-------+-------+
|
v
+-------------+
|    End      |
+-------------+

Sơ đồ này cho thấy cách chương trình quyết định thực thi khối mã nào dựa trên việc điều kiện là true hay false.

Ví dụ về câu lệnh if-else trong C

Hãy cùng nhau nhìn vào một số ví dụ thực tế để xem câu lệnh if-else hoạt động như thế nào!

Ví dụ 1: Kiểm tra số dương hoặc âm

#include <stdio.h>

int main() {
int number = 10;

if (number > 0) {
printf("The number is positive.\n");
} else {
printf("The number is non-positive.\n");
}

return 0;
}

Trong ví dụ này:

  • Chúng ta có một biến number với giá trị 10.
  • Điều kiện number > 0 kiểm tra xem số có lớn hơn không.
  • Vì 10 thực sự lớn hơn 0, điều kiện là true.
  • Do đó, chương trình sẽ in ra "The number is positive."

Hãy thử thay đổi giá trị của number thành -5:

int number = -5;

Bây giờ, điều kiện number > 0 là false, vì vậy chương trình sẽ in ra "The number is non-positive."

Ví dụ 2: Xác định một người có thể bỏ phiếu hay không

#include <stdio.h>

int main() {
int age;

printf("Enter your age: ");
scanf("%d", &age);

if (age >= 18) {
printf("You are eligible to vote!\n");
} else {
printf("Sorry, you are not eligible to vote yet.\n");
}

return 0;
}

Chương trình này:

  1. Yêu cầu người dùng nhập tuổi của họ.
  2. Kiểm tra xem tuổi có lớn hơn hoặc bằng 18 hay không.
  3. Nếu true, nó thông báo cho người dùng rằng họ có thể bỏ phiếu.
  4. Nếu false, nó nói với người dùng rằng họ chưa đủ điều kiện.

Hãy thử chạy chương trình này với các tuổi khác nhau và xem phản hồi của nó!

Câu lệnh else-if trong C

Đôi khi, chúng ta cần kiểm tra nhiều điều kiện. Đây là lúc câu lệnh else if rất hữu ích. Nó giống như việc thêm nhiều ngã rẽ vào ví dụ ban đầu của chúng ta.

Dưới đây là cú pháp:

if (condition1) {
// Mã để thực thi nếu condition1 là true
} else if (condition2) {
// Mã để thực thi nếu condition1 là false và condition2 là true
} else if (condition3) {
// Mã để thực thi nếu condition1 và condition2 là false, và condition3 là true
} else {
// Mã để thực thi nếu tất cả các điều kiện đều là false
}

Hãy xem một ví dụ:

#include <stdio.h>

int main() {
int score;

printf("Enter your score: ");
scanf("%d", &score);

if (score >= 90) {
printf("Grade: A\n");
} else if (score >= 80) {
printf("Grade: B\n");
} else if (score >= 70) {
printf("Grade: C\n");
} else if (score >= 60) {
printf("Grade: D\n");
} else {
printf("Grade: F\n");
}

return 0;
}

Chương trình này phân cấp một điểm số dựa trên điểm số nhập vào:

  • 90 hoặc hơn: A
  • 80-89: B
  • 70-79: C
  • 60-69: D
  • Dưới 60: F

Hãy thử chạy chương trình này với các điểm số khác nhau và xem bạn nhận được điểm gì!

Kết luận

Chúc mừng! Bạn vừa học được một trong những công cụ mạnh mẽ nhất trong bộ công cụ của một nhà lập trình: câu lệnh if-else. Với kiến thức này, chương trình của bạn bây giờ có thể ra quyết định, giống như bạn làm trong cuộc sống thực tế.

Hãy nhớ, thực hành là chìa khóa để thành công. Hãy thử tạo ra các chương trình của riêng bạn sử dụng câu lệnh if-else. Có thể là một chương trình quyết định mặc gì dựa trên thời tiết, hoặc một chương trình gợi ý thể loại phim dựa trên tâm trạng của bạn?

Tiếp tục lập trình, tiếp tục khám phá, và quan trọng nhất là hãy vui vẻ! Hẹn gặp lại các bạn vào lần tới, chúc các bạn lập trình vui vẻ!

Credits: Image by storyset