Bài đăng nổi bật


Câu lệnh điều kiện là gì ?
Các câu lệnh điều kiện cho phép chúng ta thay đổi luồng chương trình. Dựa trên một điều kiện nào đó, một câu lệnh hay một chuỗi các câu lệnh có thể được thực hiện hoặc không.
Hầu hết các ngôn ngữ lập trình đều sử dụng lệnh if để đưa ra điều kiện. Nguyên tắc thực hiện như sau nếu điều kiện đưa ra là đúng (true), chương trình sẽ thực hiện một công việc nào đó, nếu điều kiện đưa ra là sai (false), chương trình sẽ thực hiện một công việc khác.
Ví dụ:
Để xác định một số là số chẳn hay số lẻ, ta thực hiện như sau:
1. Nhập vào một số.
2. Chia số đó cho 2 để xác định số dư.
3. Nếu số dư của phép chia là 0, đó là số “Chẵn”.
HOẶC
Nếu số dư của phép chia khác 0, đó là số “Lẻ”.
Bước 2 trong giải thuật trên kiểm tra phần dư của số đó khi chia cho 2 có bằng 0 không? Nếu đúng, ta thực hiện việc hiển thị thông báo đó là số chẵn. Nếu số dư đó khác 0, ta thực hiện việc hiển thị thông báo đó là số lẻ.
Trong C một điều kiện được coi là đúng (true) khi nó có giá trị khác 0, là sai (false) khi nó có giá trị bằng 0.
C cung cấp hai dạng câu lệnh lựa chọn:
Câu lệnh if
Câu lệnh switch

Câu lệnh ‘if
Câu lệnh if cho phép ta đưa ra các quyết định dựa trên việc kiểm tra một điều kiện nào đó là đúng (true) hay sai (false).
Các điều kiện gồm các toán tử so sánh và logic mà chúng ta đã thảo luận ở bài 4.
Dạng tổng quát của câu lệnh if:
if  (biểu thức)  {
Các câu lệnh;
}
Biểu thức phải luôn được đặt trong cặp dấu ngoặc (). Mệnh đề theo sau từ khoá if là một điều kiện (hoặc một biểu thức điều kiện) cần được kiểm tra. Tiếp đến là một lệnh hay một tập các lệnh sẽ được thực thi khi điều kiện (hoặc biểu thức điều kiện) có kết quả true.
Ví dụ:
#include <stdio.h>
void main() {
int x, y;
         char a = ‘y’;
         x = y = 0;
         if (a == ‘y’) {
                   x += 5;
                   printf(“The numbers are %d and \t%d”, x, y);
         }
}
Kết quả của chương trình như sau:
         The numbers are 5 and 0
Có kết quả này là do biến a đã được gán giá trị 'y'.
Chú ý rằng, khối lệnh sau lệnh if được đặt trong cặp ngoặc nhọn {}. Khi có nhiều lệnh cần được thực hiện, các câu lệnh đó được coi như một block (khối lệnh) và phải được đặt trong cặp dấu {}. Nếu trong ví dụ trên ta không đưa vào dấu ngoặc nhọn ở câu lệnh if, chỉ có câu lệnh đầu tiên (x += 5) được thực hiện khi điều kiện trong câu lệnh if là đúng.
Ví dụ dưới đây sẽ kiểm tra một năm có phải là năm nhuận hay không. Năm nhuận là năm chia hết cho 4 hoặc 400 nhưng không chia hết cho 100. Chúng ta sử dụng lệnh if để kiểm tra điều kiện.
Ví dụ:
/* To test for a leap year */
#include <stdio.h>
void main() {
         int year;
        
         printf(“\nPlease enter a year:”);
         scanf(“%d”, &year);

         if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
                   printf(“\n%d is a leap year!”, year);
}
Chương trình trên cho ra kết quả như sau:
Please enter a year: 1988
1988 is a leap year!

Điều kiện year % 4 == 0 && year % 100 != 0 || year % 400 == 0 trả  về  giá trị 1 nếu năm đó là năm nhuận. Khi đó, chương trình hiển thị thông báo gồm biến year và dòng chữ “is a leap year”. Nếu điều kiện trên không thỏa mãn, chương trình không hiển thị thông báo nào.

Post a Comment

أحدث أقدم