Các phép toán so sánh trong c++ năm 2024

Trong C nhiều loại phép toán. Bài viết hôm nay chúng ta cùng tìm hiểu về các phép toán trong C.

  1. Toán tử số học: Các toán tử số học thông thường là:

Cộng : +

Trừ : –

Nhân : *

Chia : /

Phép chia lấy phần dư của số nguyên : %

*Chú ý: – Phép toán % không dùng cho kiểu dữ liệu float hay double. – Phép chia( / ) thực hiện theo kiểu của các toán hạng dù là phép chia số nguyên hay số thực. – Có sự khác nhau giữa i/j và (float)i/j . Theo cách viết (float)i/j thì kết quả sẽ là một số thực.

Ví dụ:

include <stdio.h>

include <conio.h>

int main() { int i = 10,j = 4, s, p, r; float x; s = i + j; printf("n Tong = %d",s); printf("n Hieu = %d",i-j); p = i*j ; printf("nTich = %d",p); printf("nThuong = %d",i/j); x=(float)i/j; printf("n Thuong = %f",x); r = i % j ; printf("n Phan du la : %d",r); printf("n x + i = %f",x + i ); getch(); return 0; }

kết quả :

Tong = 14 Hieu = 6Tich = 40Thuong = 2 Thuong = 2.500000 Phan du la : 2 x + i = 12.500000

  1. Toán tử quan hệ: Các toán tử quan hệ bao gồm : != : so sánh sự khác nhau \==: so sánh bằng nhau \>=: so sánh lớn hơn hoặc bằng <=: so sánh nhỏ hơn hoặc bằng \> : so sánh lớn hơn < : so sánh nhỏ hơn Ví dụ:

include <stdio.h>

include <conio.h>

int main (){ int a,b; printf ("nNhap a = ");scanf ("%d",&a); printf ("nNhap b = ");scanf ("%d",&b); if (a == b){

printf ("na bang b");
} if (a != b){
printf ("na khong bang b");
} if (a > b){
printf ("na lon hon b");
} else printf ("na nho hon b"); if (a >= 0 && a <= 10 ){
printf ("na nam trong khoang 0 - 10");
} if (a < 0 || a > 100){
printf ("na nho hon 0 hoac a lon hon 100");
} getch (); return 0; }

kết quả :

Nhap a = 10 Nhap b = 15 a khong bang ba nho hon ba nam trong khoang 0 – 10

  1. Toán tử logic: Các phép toán logic gồm: – && : phép AND logic – | | : phép OR logic – ! : phép NOT logic Trong đó: – Phép && chỉ cho kết quả là đúng chỉ khi hai toán hạng đều đúng. – Phép | | chỉ cho kết quả là sai khi hai toán hạng đều sai. – Phép ! phủ định lại toán hạng.
  2. Toán tử trên bit: Các toán tử trên bit cho phép xử lý các tín hiệu ở mức bit . Các phép toán này không được dùng cho kiểu float và double. Các toán tử này bao gồm: – & : phép AND ở mức nhị phân. – | : phép OR ở mức nhị phân. – : phép XOR ở mức nhị phân. – << : Phép dịch trái(Shift left). – >> : Phép dịch phải(Shift right). – ~ : Phép đảo bit. *Cách thực hiện các phép toán trên bit: 1 & 1 = 1 1 | 1 = 1 1 1 = 0 1 & 0 = 0 1 | 0 = 1 1 0 = 1 0 & 1 = 0 0 | 1 = 1 0 1 = 1 0 & 0 = 0 0 | 0 = 0 0 ^ 0 = 0 Các phép dịch trái “<<”, dịch phải “>>” gây nên sự lệch trái hay lệch phải nội dụng của một biến. – x << M nghĩa là dịch sang trái số nguyên x đi M bit, tương đương với x*2M

– x >> M nghĩa là dịch sang phải số nguyên x đi M bit, tương đương với phép chia x/2M (chia lấy phần nguyên). Ví dụ: Ta có thể thay phép tính x*80 bằng cách viết: x << 6 + x << 2 vì 80 = 26 +24

  1. Toán tử tăng giảm: Trong ngôn ngữ lập trình C, phép tăng giảm 1 có thể viết gọn lại như sau: – i = i + 1 có thể được viết thành : i (tăng sau) hoặc i(tăng trước). – i = i – 1 có thể được viết thành : i– ( giảm sau) hoặc –i (giảm trước). Phép i thì đầu tiên biến i được tăng 1, sau đó thực hiện phép gán. Còn phép i thì phép gán được thực hiện trước, phép tăng 1 sẽ được thực hiện sau. Ví dụ: Với i = 3 ; j = 15; a/ i = j ; i = j kết quả i = 16, j = 16 b/ i = j kết quả i = 15, j = 16 c/ j = i + 5 kết quả i = 4, j = 9 d/ j = i +5 kết quả j = 8, i = 4
  2. Toán tử gán:

* Phép gán đơn giản Cú pháp : Tên_một_biến = biểu_thức; Ví dụ: i = 3 ; /* I được gán giá trị là 3*/ /* i cộng với 4 được 7, gán 7 vào i*/ i = i + 4 ; Điều này có nghĩa là giá trị của biểu thức bên phải dấu gán = sẽ được đặt vào ô nhớ của biến nằm bên trái dấu gán. * Phép gán kép Ví dụ 2.20: /* Gán giá trị 5 cho ba biến a, b, c */ a= b = c = 5 ; /* Gán 5 cho c sau đó c cộng với b, và gán cho a */ a= b + ( c = 5) ; * Các phép gán mở rộng Trong ngôn ngữ lập trình C, phép gán mở rộng được quy định như sau : x += y <=> x = x + y x -= y <=> x = x – y x *= y <=> x = x*y x /= y <=> x = x / y x %= y <=> x = x % y x >>=y <=> x = x >> y x <<=y <=> x = x << y x &= y <=> x = x & y x |= y <=> x = x | y x = y <=> x = x y

  1. Toán tử phẩy – biểu thức phẩy: Mỗi câu lệnh trong ngôn ngữ lập trình C được kết thúc bằng dấu chấm phẩy, tuy nhiên trong một biểu thức của ngôn ngữ lập trình C có thể gồm nhiều câu lệnh được cách nhau bởi dấu phẩy. Ví dụ: x = a*b, q = x + y, k = q / z;
  2. Phép toán biểu thức điều kiện:

Cú pháp : <Tên biến> = <Biểu thức điều kiện> ? <biểu thức 1> : <biểu thức 2>; Trong ngôn ngữ lập trình C, toán tử điều kiện ( toán tử chấm hỏi “ ? ”) để so sánh giá trị đúng sai và cho phép có sự chọn lựa thích hợp. Ví dụ:

include <stdio.h>

include <conio.h>

int main (){ int a,b; printf ("nNhap a = ");scanf ("%d",&a); printf ("nNhap b = ");scanf ("%d",&b); int Max = a > b ? a : b; int Min = a < b ? a : b; printf ("nMax = %d",Max); printf ("nMin = %d",Min); getch (); return 0; }

kết quả :Nhap a = 5 Nhap b = 9 Max = 9Min = 5