TiiL Tutorials
@TinhocTiiL

Bài 3+. Ví dụ cấu trúc rẽ nhánh với Lệnh if else

Bài này cung cấp cho các bạn một số ví dụ về sử dụng cấu trúc rẽ nhánh bằng lệnh if else. Từ ví dụ đơn giản, đến if else kết hợp, if else lồng nhau.

Mời xem lại Bài 3- Cấu trúc rẽ nhánh – Lệnh IF   để nắm lại cú pháp lệnh if else

Ví dụ 1: lệnh If đơn    (dạng 1)

Đề bài: Viết chương trình cho phép người dùng nhập một số nguyên từ bàn phím, cho biết số vừa nhập có phải là số âm hay không?

Phân tích

  • Cần khai báo một biến để lư trữ số nguyên được nhập vào –> ta đặt tên biến là x chẳng hạn
    • khai báo sẽ là:   int x;
  • Số x là số âm khi x <0

Lập trình như sau:

#include <stdio.h>
int main() {
    int x;

    printf("Moi nhap so nguyen: ");
    scanf("%d", &x);

    if (number < 0) {
        printf("So ban vua nhap %d la mot so am\n", x);
    }

    printf("Hello Thay TiiL - Lenh if that la de");

    return 0;
}

Kết quả thực hiện như sau

Moi nhap so nguyen:-2 So ban vua nhap -2 la mot so am
Hello Thay TiiL - Lenh if that la de 

 Ví dụ 2: Lệnh  if…else   (dạng 2)

Đề bài: Viết chương trình nhập vào một số nguyên N, cho biết đó là số chẵn hay lẻ

Phân tích:

  • Cần khai báo một biến để lư trữ số nguyên được nhập vào –> ta đặt tên biến là N chẳng hạn
    • khai báo sẽ là:   int N;
  • N là số chẵn  khi N chia hết cho 2,
    • chia hết cho 2 –> phần dư của phép chia  bằng 0 –> N % 2  == 0 thi N là số chẵn

Lập trình như sau:

#include <stdio.h>
int main() {
    int N;
    printf("Moi nhap mot so nguyen: ");
    scanf("%d", &N);
    if  (N % 2 == 0) {
        printf("%d la so nguyen chan.",N);
    }
    else {
        printf("%d la so nguyen le.",N);
    }
    return 0;
}

Output

Moi nhap mot so nguyen:  9 9 la so nguyen le.

 


Thang  if…else

Trong thực thế cuộc sống, đôi khi ta phải kiểm tra nhiều điều kiện (>2) để quyết định rẽ theo nhánh nào. khi đó, ta có thể sử dụng if else kiểu thang sau để lần lượt kiểm tra các điều kiện,


Cú pháp có dạng

if (biểu thức kiểm tra 1 ) {
   // Các lệnh hiện nếu biêu thức kiểm tra 1 cho kết quả đúng
}
else if(biểu thức kiểm tra 2) {
   // Các lệnh thực hiện nếu biêu thức kiểm tra 2 cho kết quả đúng
}
else if (biểu thức kiểm tra 3) {
     // Các lệnh thực hiện nếu biêu thức kiểm tra 3 cho kết quả đúng
}
.
.
else {
   // Các lệnh thực hiện nếu biêu thức kiểm tra 1 - n deu cho ket qua sai
}

Ví dụ số 3: C if…else Ladder

Đề bài: Viết chương trình nhập vào 2 số a, b. So sánh 2 số và in kết quả ra màn hình 
Phân tích:
  • Cần khai báo 2 biến, a và b:   int a, b;
  • Các phép toán so sánh trong C gồm có:  >, >=, <, <=, != (khác), == (bằng)
#include <stdio.h>
int main() {
    int a, b;
    printf("Nhap 2 so nguyen: ");
    scanf("%d %d", &a, &b);
    
    if(a== b) {
        printf("Ket qua: %d = %d",a,b);
    }    
    else if (a> b) {
        printf("Ket qua: %d > %d", a, b);
    }
     else {
        printf("Ket qua: %d < %d",a, b);
    }

    return 0;
}

Output

Nhap 2 so nguyen: 12
23
Ket qua: 12 < 23 

 Ví dụ 4:   if…else lồng nhau

#include <stdio.h>
int main() {
    int a, b;
    printf("Enter two integers: ");
    scanf("%d %d", &a, &b);

    if (a>= b) {
      if (a== b) {
        printf("Result: %d = %d",a,b);
      }
      else {
        printf("Result: %d > %d", a, b);
      }
    }
    else {
        printf("Result: %d < %d",a, b);
    }

    return 0;
}

Chi tiết, xem video full tại TiiL channel

Avatar
https://khoacntt.ntu.edu.vn/giang-vien/mai-cuong-tho

một GV Đại học. TiiL đã phụ trách một số môn học như: Lập trình Java, Phát triển web với Java, Lập trình thiết bị di động, Lập trình hệ thống nhúng và IoT.

Comments are closed.