Các Toán Tử Trong C (số Học - Gán - Quan Hệ -...)
Có thể bạn quan tâm
Trong bài này chúng ta sẽ tìm hiểu một số toán tử thường gặp trong C như: Toán tử số học, toán tử quan hệ, toán tử logic, và toán tử gán.
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.Nói về toán tử thì hầu như ngôn ngữ lập trình nào cũng có, và ý nghĩa sử dụng cũng giống nhau. Chỉ có điều mỗi ngôn ngữ sẽ có một cú pháp riêng nên có thể cách biểu diễn sẽ khác. Tuy nhiên, hầu hết các ngôn ngữ lập trình hiện nay đều có cú pháp sử dụng các toán tử giống nhau lên đến 90%.
1. Toán tử số học trong C
Một toán tử số học thực hiện các phép toán như cộng, trừ, nhân, chia, v.v. trên các giá trị số (hằng số và biến).
Toán tử | Ý nghĩa |
---|---|
+ | Phép cộng |
- | Phép trừ |
* | Phép nhân |
/ | Phép chia |
% | Phép chia lấy dư |
Những toán tử này tương đối dễ, chỉ có toán từ % là đặc biệt, nó sẽ lấy kết quả là phần dư của phép chia. Ví dụ 4 % 3 = 1 tại vì 4 chia cho 3 sẽ dư 1.
Bài viết này được đăng tại [free tuts .net]
Xem ví dụ dưới đây:
// Working of arithmetic operators #include <stdio.h> int main() { int a = 9,b = 4, c; c = a+b; printf("a+b = %d \n",c); c = a-b; printf("a-b = %d \n",c); c = a*b; printf("a*b = %d \n",c); c = a/b; printf("a/b = %d \n",c); c = a%b; printf("Chia lay du = %d \n",c); return 0; }Kết quả:
a+b = 13 a-b = 5 a*b = 36 a/b = 2 Chia lay du =12. Toán tử tăng giảm 1 đơn vị trong C
Trong C cho phép bạn tăng giá trị của biến lên 1 bằng phép ++, giảm xuống 1 đơn vị bằng phép --. Xem ví dụ sau để hiểu rõ hơn nhé.
#include <stdio.h> int main() { int a = 10, b = 100; float c = 10.5, d = 100.5; printf("++a = %d \n", ++a); printf("--b = %d \n", --b); printf("++c = %f \n", ++c); printf("--d = %f \n", --d); return 0; }Kết quả:
++a = 11 --b = 99 ++c = 11.500000 ++d = 99.500000Ngoài ra bạn có thể đặt toán tử này phía sau biến cũng được, tức là a-- hoặc a++.
Sự khác nhau giữa hai cách đặt này là như sau:
- Nếu bạn đặt toán tử ở phía trước thì trình biên dịch sẽ ưu tiên chạy toán tử này trước, tức là giá trị sẽ tăng / giảm trước khi thực hiện các phép khác.
- Nếu đặt phía sau thì nó sẽ tính các phép toán khác rồi mới tăng / giảm cho biến.
Ví dụ:
int a = 12; int b; b = ++a; // b = 13 b = a++; // b = 123. Toán tử gán trong C
Toán tử gán dùng để gán / thay đổi giá trị cho biến. Trong C có tổng cộng 6 toán tử gán thường sử dụng nhất, đó là:
Toán tử | Ví dụ | Tương đương |
---|---|---|
= | a = b | a = b |
+= | a += b | a = a+b |
-= | a -= b | a = a-b |
*= | a *= b | a = a*b |
/= | a /= b | a = a/b |
%= | a %= b | a = a%b |
Khi bạn sử dụng các toán tử số học kèm với toán tử bằng thì đồng nghĩa với việc ghi tắt ở cột tương đương (trong bảng trên).
Ví dụ:
#include <stdio.h> int main() { int a = 5, c; c = a; // c is 5 printf("c = %d\n", c); c += a; // c is 10 printf("c = %d\n", c); c -= a; // c is 5 printf("c = %d\n", c); c *= a; // c is 25 printf("c = %d\n", c); c /= a; // c is 5 printf("c = %d\n", c); c %= a; // c = 0 printf("c = %d\n", c); return 0; }Kết quả:
c = 5 c = 10 c = 5 c = 25 c = 5 c = 0Đây là những toán tử được sử dụng rất thường xuyên trong lập trình C.
4. Toán tử quan hệ trong C
Toán tử quan hệ dùng để trả về mối quan hệ giữa hai biểu thức hoặc hai toán hạng. Kết quả trả về của nó là TRUE hoặc FALSE.
- TRUE đồng nghĩa với 1
- FALSE đồng nghĩa với 0
Đây là toán tử khá quan trọng bởi nó được dùng để kiểm tra tính logic của bài toán, kể cả trong thực tế hay lúc học đều đụng đến nó khá nhiều.
Sau đây là bảng danh sách các toán tử quan hệ trong ngôn ngữ C.
Toán tử | Ý nghĩa | Ví dụ |
---|---|---|
== | So sánh bằng | 5 == 3 trả về 0 |
> | So sánh lớn hơn | 5 > 3 trả về 1 |
< | So sánh bé hơn | 5 < 3 trả về 0 |
!= | So sánh không bằng | 5 != 3 trả về 1 |
>= | Lớn hơn hoặc bằng | 5 >= 3 trả về 1 |
<= | Bé hơn hoặc bằng | 5 <= 3 trả về 0 |
Xem ví dụ sau:
// Working of relational operators #include <stdio.h> int main() { int a = 5, b = 5, c = 10; printf("%d == %d is %d \n", a, b, a == b); printf("%d == %d is %d \n", a, c, a == c); printf("%d > %d is %d \n", a, b, a > b); printf("%d > %d is %d \n", a, c, a > c); printf("%d < %d is %d \n", a, b, a < b); printf("%d < %d is %d \n", a, c, a < c); printf("%d != %d is %d \n", a, b, a != b); printf("%d != %d is %d \n", a, c, a != c); printf("%d >= %d is %d \n", a, b, a >= b); printf("%d >= %d is %d \n", a, c, a >= c); printf("%d <= %d is %d \n", a, b, a <= b); printf("%d <= %d is %d \n", a, c, a <= c); return 0; }Kết quả:
5 == 5 is 1 5 == 10 is 0 5 > 5 is 0 5 > 10 is 0 5 < 5 is 0 5 < 10 is 1 5 != 5 is 0 5 != 10 is 1 5 >= 5 is 1 5 >= 10 is 0 5 <= 5 is 1 5 <= 10 is 15. Toán tử logic trong C
Biểu thức chứa toán tử logic trả về 0 (FALSE) hoặc 1 (TRUE) tùy thuộc vào kết quả biểu thức là đúng hay sai. Các toán tử logic thường được sử dụng trong việc ra quyết định làm một điều gì đó trong lập trình.
Giả sử ta có A (operator) B, trong đó operator chính là một trong ba toán tử dưới đây.
Toán tử | Ý nghĩa |
---|---|
&& (AND) | Trả về true khi A và B đều true, chỉ cần một trong hai vế sai là trả về false |
|| (OR) | Trả về true khi một trong hai vế đúng, trả về false khi cả hai vế sai. |
! (NOT) | Toán tử phủ định, trả về true nếu biểu thức false, trả về false nếu biểu thức true |
Xem ví dụ sau.
#include <stdio.h> int main() { int a = 5, b = 5, c = 10, result; result = (a == b) && (c > b); printf("(a == b) && (c > b) is %d \n", result); result = (a == b) && (c < b); printf("(a == b) && (c < b) is %d \n", result); result = (a == b) || (c < b); printf("(a == b) || (c < b) is %d \n", result); result = (a != b) || (c < b); printf("(a != b) || (c < b) is %d \n", result); result = !(a != b); printf("!(a == b) is %d \n", result); result = !(a == b); printf("!(a == b) is %d \n", result); return 0; }Kết quả:
(a == b) && (c > b) is 1 (a == b) && (c < b) is 0 (a == b) || (c < b) is 1 (a != b) || (c < b) is 0 !(a != b) is 1 !(a == b) is 0Trên là 5 loại toán tử được được sử dụng nhiều nhất khi làm việc với ngôn ngữ lập trình C. Bạn hãy thử chạy các ví dụ, thay giá trị cho các biến để hiểu rõ ý nghĩa của từng toán tử nhé.
Sau khi học xong bài này là ta có thể học những kiến thức cao hơn đó chính là các lệnh rẻ nhánh và vòng lặp. Hẹn gặp lại bạn ở chương kế tiếp nhé.
Từ khóa » Toán Tử Logic Trong C
-
Toán Tử Logic Trong C | 64 Bài Học Lập Trình C Hay Nhất
-
Toán Tử Trong C - AICurious
-
Toán Tử Trong C++
-
[Tự Học C++] Toán Tử Logical Trong C++ »
-
Toán Tử Trong C - VietTuts
-
Toán Tử Quan Hệ, Logic, Bitwise, Misc Và độ ưu Tiên Toán Tử Trong C++
-
Toán Tử Logic, Toán Tử Trên Bit Và Toán Tử Gán Trong C++ - Góc Học IT
-
Bài 8 – 10. Toán Tử Trong C - Lập Trình Không Khó
-
LTC 15. Toán Tử Logic Trong Lập Trình C | Tự Học Lập Trình C - YouTube
-
Toán Tử So Sánh Logic Và Các Câu Lệnh If Switch Trong C# .NET
-
Kiểu Boolean Toán Tử So Sánh Toán Tử Logic
-
Toán Tử Logic Trong C++ Và Giá Trị True False - TBDN
-
[Lập Trình C++ Cơ Bản] Bài 2: Toán Tử Và Toán Hạng - Viblo
-
Bài 4: Toán Tử Và Biểu Thức Trong C | Tìm ở đây
-
Bài 8: Cách Sử Dụng Toán Tử Trong Lập Trình C - Khuê Nguyễn
-
Thứ Tự ưu Tiên Của Các Toán Tử Trong Ngôn Ngữ Lập Trình C
-
Phép Toán Thao Tác Bit – Wikipedia Tiếng Việt