if
Giới thiệu
Trước khi đọc về lệnh if, các bạn cần xem qua các mục sau:
Toán tử
|
Ý nghĩa
|
Ví dụ
|
and (&&)
|
Và
|
(a && b) trả về TRUE nếu a và b đều mang giá trị TRUE. Nếu một trong a hoặc b là FALSE thì (a && b) trả về FALSE
|
or ( || )
|
Hoặc
|
(a || b) trả về TRUE nếu có ít nhất 1 trong 2 giá trị a và b là TRUE, trả về FALSE nếu a và b đều FALSE
|
not ( ! )
|
Phủ định
|
nếu a mang giá trị TRUE thì (!a) là FALSE và ngược lại
|
xor (^)
|
Loại trừ
|
(a ^ b) trả về TRUE nếu a và b mang hai giá trị TRUE/FALSE khác nhau, các trường hợp còn lại trả về FALSE
|
Các toán tử so sánh (Comparison operators)
Các toán tử so sánh thường dùng để so sánh 2 số có cùng một kiểu dữ liệu.
Toán tử
|
Ý nghĩa
|
Ví dụ
|
==
|
So sánh bằng
|
(a == b) trả về TRUE nếu a bằng b và ngược lại
|
!=
|
So sánh không bằng
|
(a != b) trả về TRUE nếu a khác b và ngược lại
|
>
|
So sánh lớn
|
(a > b) trả về TRUE nếu a lớn hơn b và FALSE nếu a bé hơn hoặc bằng b
|
<
|
So sánh bé
|
(a < b) trả về TRUE nếu a bé hơn b và FALSE nếu ngược lại
|
<=
|
Bé hơn hoặc bằng
|
(a <= b) tương đương với ((a < b) or (a = b))
|
>=
|
Lớn hơn hoặc bằng
|
(a >= b) tương đương với ((a > b) or (a = b))
|
Câu lệnh if
Cú pháp:
if ([biểu thức 1] [toán tử so sánh] [biểu thức 2]) { //biểu thức điều kiện [câu lệnh 1] } else { [câu lệnh 2] }
Nếu biểu thức điều kiện trả về giá trị TRUE, [câu lệnh 1] sẽ được thực hiện, ngược lại, [câu lệnh 2] sẽ được thực hiện.
Ví dụ:
int a = 0; if (a == 0) { a = 10; } else { a = 1; } // a = 10
Lệnh if không bắt buộc phải có nhóm lệnh nằm sau từ khóa else
int a = 0; if (a == 0) { a = 10; } // a = 10
Bạn có thể kết hợp nhiều biểu thức điều kiện khi sử dụng lệnh if. Chú ý rằng mỗi biểu thức con phải được bao bằng một ngoặc tròn và phải luôn có một cặp ngoặc tròn bao toàn bộ biểu thức con.
Cách viết đúng
|
Cách viết sai
|
int a = 0;
if ((a == 0) && (a < 1)) {
a = 10;
}
|
int a = 0;
if (a == 0) && (a < 1) {
a = 10;
}
|
int a = 0;
if (a == 0 && a < 1) {
a = 10;
}
|
Chú ý:
- a = 10; là một câu lệnh gán, giá trị logic của nó luôn là TRUE (vì lệnh gán này luôn thực hiện được)
- (a == 10) là một biểu thức logic có giá trị TRUE hay FALSE tùy thuộc vào giá trị của biến x.
Nếu bạn viết …
int a = 0; if (a = 1) { a = 10; }
… thì giá trị của a sẽ bằng 10, vì (a = 1) là một câu lệnh gán, trong trường hợp này nó được xem như một biểu thức logic và luôn trả về giá trị TRUE.
0 comments:
Post a Comment