Lệnh if..else trong C

Lệnh if

Cú pháp lệnh if

if (mệnh đề kiểm tra) 
{
   // thực hiện nếu mệnh đề đúng
}

Lệnh if hoạt động như thế nào?

Lệnh if sẽ đánh giá mệnh đề bên trong dấu ngoặc đơn:

  • Nếu mệnh đề đúng, những câu lệnh bên trong body của lệnh if sẽ được thực hiện.
  • Nếu mệnh đề sai, sẽ không có gì xảy ra cả.

Ví dụ 1: hiển thị số nếu là âm

// Chương trình sẽ hiển thị số nếu số đó âm

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

    printf("Hãy gõ một số: ");
    scanf("%d", &number);

    // đúng nếu số đã điền bé hơn 0
    if (number < 0) {
        printf("Bạn đã chọn số %d.\n", number);
    }

    printf("Lệnh if khá là dễ.");

    return 0;
}

Kết quả

Hãy gõ một số: -2
Bạn đã chọn số -2
Lệnh if khá là dễ.

Lệnh if..else

Cú pháp lệnh if else:

if (mệnh đề kiểm tra) {
    // thực hiện nếu đúng
}
else {
    // thực hiện nếu sai
}

Lệnh if..else hoạt động như thế nào

Nếu mệnh đề bên trong dấu () là đúng thì các câu lệnh bên trong body của if sẽ được thực hiện, còn nếu sai thì các câu lệnh bên trong else sẽ được thực hiện.


Ví dụ 2: kiểm tra chẵn lẻ

// Kiểm tra một số chẵn hay lẻ

#include <stdio.h>
int main() {
    int number;
    printf("Nhập một số nguyên: ");
    scanf("%d", &number);

    // Đúng nếu phần dư là 0
    if  (number%2 == 0) {
        printf("%d là số chẵn.",number);
    }
    else {
        printf("%d là số lẻ.",number);
    }

    return 0;
}

Kết quả

Nhập một số nguyên: 7
7 là số lẻ.

Lệnh if…else Ladder

Cú pháp

if (mệnh đề 1) {
   // các câu lệnh
}
else if(mệnh đề 2) {
   // các câu lệnh
}
else if (mệnh đề 3) {
   // các câu lệnh
}
.
.
else {
   // các câu lệnh
}

Ví dụ 3: so sánh 2 số

// So sánh 2 số sử dụng dấu =, > hoặc < 

#include <stdio.h>
int main() {
    int number1, number2;
    printf("Nhập 2 số: ");
    scanf("%d %d", &number1, &number2);

    //kiểm tra nếu 2 số bằng nhau.
    if(number1 == number2) {
        printf("Result: %d = %d",number1,number2);
    }

    //kiểm tra nếu number1 lớn hơn number2.
    else if (number1 > number2) {
        printf("Result: %d > %d", number1, number2);
    }

    //kiểm tra nếu number1 bé hơn number2.
    else {
        printf("Result: %d < %d",number1, number2);
    }

    return 0;
}

Kết quả

Nhập 2 số: 
12
23
Result: 12 < 23

Lệnh if..else lồng nhau

Chúng ta có thể sử dụng lệnh if..else bên trong một câu lệnh if.else khác.

Ví dụ 4:

Chúng ta có thể dùng một cách khác để giải bài toán so sánh 2 số trong ví dụ 3 bằng cách dùng một câu lệnh if..else bên trong một câu lệnh if..else như sau:

#include <stdio.h>
int main() {
    int number1, number2;
    printf("Nhập 2 số: ");
    scanf("%d %d", &number1, &number2);

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

    return 0;
}
Series Navigation<< Toán tử trong CLệnh For trong C >>

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *