Phép so sánh gồm những phép toán nào

Hướng dẫn cách sử dụng toán tử so sánh trong C. Bạn sẽ học được các phép so sánh trong C được biểu diễn thông qua các toán tử so sánh trong C và ứng dụng chúng để so sánh 2 số trong Cso sánh 2 chuỗi trong C sau bài học này.

Bảng toán tử so sánh trong C

Để thực hiện các phép so sánh trong C, chúng ta sử dụng các toán tử so sánh trong C được liệt kê trong bảng dưới đây:

Toán tửBiểu thức điều kiệnÝ nghĩa
==x == yx và y bằng nhau
!=x != yx và y không bằng nhau
>x > yx lớn hơn y
=x >= yx bằng hoặc lớn hơn y
[3 + 4j]]

Lỗi sau đây sẽ xảy ra:

Main.c:4:16: error: invalid operands to binary expression ['_Complex int' and '_Complex int']
if[[5 + 2j] > [3 + 4j]]

So sánh lớn nhỏ trong chuỗi C

Khi sử dụng phép so sánh lớn nhỏ để so sánh chuỗi C, thay vì so sánh trực tiếp giá trị của hai chuỗi, chúng ta sẽ so sánh mã ký tự ASSCII giữa chúng.
Để lấy mã ASSCII của một ký tự bất kỳ, chúng ta sử dụng hàm printf[] với định dạng format là %d [trong trường hợp muốn lấy mã ASSCII dưới dạng thập phân] như sau:

printf["Mã ascii của a:%d\n", 'a'];
printf["Mã ascii của A:%d\n", 'A'];
printf["Mã ascii của b:%d\n", 'b'];
  • Xem thêm: Mã ký tự trong C [Character code]

Khi so sánh lớn nhỏ hai ký tự đơn, chúng ta đơn giản so sánh mã ký tự ASSCII của chúng. Ví dụ, do mã ký tự ASSCII của ký tự a là 97 sẽ lớn hơn của ký tự A là 65 nên phép so sánh sau sẽ cho ra kết quả True.



int main[void]{
printf["Mã ascii của a:%d\n", 'a'];
printf["Mã ascii của A:%d\n", 'A'];

if [ 'a' > 'A']
printf["a > A"];
return 0;
}



Tuy nhiên khi so sánh 2 chuỗi ký tự với nhau, chúng ta không thể đơn thuần so sánh các mã ký tự ASSCII của từng ký tự được. Lúc này, phép so sánh sẽ bắt đầu từ ký tự đầu tiên trong hai chuỗi, và nếu chúng giống nhau, các ký tự tiếp theo được so sánh cho tới khi xuất hiện một ký tự khác nhau đầu tiên trong hai chuỗi. Khi đó, mã ký tự ASSCII của ký tự này sẽ đại diện cho cả chuỗi và được dùng để so sánh lớn nhỏ.

Để làm được việc này thì thay vì sử dụng toán tử so sánh thì chúng ta sẽ sử dụng tới một phương pháp khác đó là hàm strcmp[] trong C. Hàm này có tác dụng so sánh mã ASSCII của ký tự khác nhau đầu tiên giữa 2 chuỗi và đưa ra hiệu giữa chúng. Bằng cách so sánh hiệu mã ASSCII này với số 0 mà chúng ta có thể so sánh lớn nhỏ giữa 2 chuỗi này.

Chi tiết về hàm strcmp[] cũng như cách so sánh chuỗi ký tư trong C xin hãy xem ở bài dưới đây:

  • Xem thêm: So sánh chuỗi trong C

Tổng kết

Trên đây Kiyoshi đã hướng dẫn bạn về cách sử dụng các phép so sánh trong C được biểu diễn thông qua các toán tử so sánh trong C rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về C trong các bài học tiếp theo.

Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!

HOME>> lập trình c cơ bản dành cho người mới học lập trình>>08. lệnh điều kiện trong c

Bài sau

Toán tử logic trong C và giá trị true false

Bài tiếp

For trong C và vòng lặp với số lần cụ thể

Video liên quan

Chủ Đề