Contents
Dẫn nhập
Bạn đã tìm hiểu về biến và kiểu dữ liệu trong chương trình C#. Bài học hôm nay sẽ giúp bạn hiểu rõ hơn về toán tử trong C#, và cách thực hiện các phép toán giữa các biến cũng như xử lý dữ liệu của biến.
READ MORE:
Nội dung
Để hiểu rõ toán tử trong C#, chúng ta nên có kiến thức cơ bản về các phần sau:
Bạn đang xem: Toán tử trong C#
- Cấu trúc lệnh của C# viết trên nền Console Application.
- Cấu trúc nhập xuất của C# trên nền Console Application.
- Biến và kiểu dữ liệu trong C#.
Trong bài học này, chúng ta sẽ tìm hiểu về các vấn đề sau:
- Khái niệm về toán tử và các loại toán tử.
- Cú pháp và ý nghĩa của từng toán tử.
- Độ ưu tiên của các toán tử.
- Ví dụ chương trình sử dụng một số toán tử.
Toán tử là gì?
Toán tử trong C# là những công cụ để thao tác với dữ liệu. Mỗi toán tử đại diện cho một phép toán cụ thể được thực hiện trên dữ liệu. Trong C#, có 6 loại toán tử cơ bản:
- Toán tử toán học.
- Toán tử quan hệ.
- Toán tử logic.
- Toán tử khởi tạo và gán.
- Toán tử so sánh trên bit.
- Toán tử khác.
Cú pháp và ý nghĩa của từng toán tử
Toán tử toán học
Toán tử toán học thực hiện các phép tính cơ bản như cộng, trừ, nhân, chia và các phép tính khác. Dưới đây là một số toán tử toán học và ý nghĩa của chúng:
+
: Thực hiện phép cộng hai toán hạng.-
: Thực hiện phép trừ hai toán hạng.*
: Thực hiện phép nhân hai toán hạng./
: Thực hiện phép chia lấy phần nguyên (nếu cả hai toán hạng là số nguyên) hoặc phép chia thường (nếu một trong hai toán hạng không phải số nguyên).%
: Thực hiện phép chia lấy dư.
Toán tử quan hệ
Toán tử quan hệ sử dụng để so sánh giá trị của hai toán hạng và trả về kết quả là true
hoặc false
. Dưới đây là một số toán tử quan hệ và ý nghĩa của chúng:
==
: So sánh hai toán hạng có bằng nhau hay không. Trả vềtrue
nếu bằng, ngược lại trả vềfalse
.!=
: So sánh hai toán hạng có khác nhau hay không. Trả vềtrue
nếu khác, ngược lại trả vềfalse
.>
: So sánh toán hạng bên trái có lớn hơn toán hạng bên phải hay không. Trả vềtrue
nếu lớn hơn, ngược lại trả vềfalse
.<
: So sánh toán hạng bên trái có nhỏ hơn toán hạng bên phải hay không. Trả vềtrue
nếu nhỏ hơn, ngược lại trả vềfalse
.>=
: So sánh toán hạng bên trái có lớn hơn hoặc bằng toán hạng bên phải hay không. Trả vềtrue
nếu lớn hơn hoặc bằng, ngược lại trả vềfalse
.<=
: So sánh toán hạng bên trái có nhỏ hơn hoặc bằng toán hạng bên phải hay không. Trả vềtrue
nếu nhỏ hơn hoặc bằng, ngược lại trả vềfalse
.
Toán tử logic
Xem thêm : Top 7 ứng dụng scratch không phải ai cũng biết
Toán tử logic sử dụng để thực hiện các phép logic và trả về kết quả là true
hoặc false
. Dưới đây là một số toán tử logic và ý nghĩa của chúng:
&&
: Toán tử logic AND. Trả vềtrue
nếu tất cả toán hạng đều mang giá trịtrue
, ngược lại trả vềfalse
.||
: Toán tử logic OR. Trả vềtrue
nếu có ít nhất một toán hạng mang giá trịtrue
, ngược lại trả vềfalse
.!
: Toán tử logic NOT. Đảo ngược trạng thái logic của toán hạng. Trả vềtrue
nếu toán hạng làfalse
, ngược lại trả vềfalse
.
Toán tử khởi tạo và gán
Toán tử khởi tạo và gán được sử dụng để lưu giữ giá trị cho một biến nào đó. Dưới đây là một số toán tử khởi tạo và gán phổ biến:
=
: Gán giá trị của toán hạng bên phải cho toán hạng bên trái.+=
: Cộng toán hạng bên trái với toán hạng bên phải và gán kết quả lại cho toán hạng bên trái.-=
: Trừ toán hạng bên phải từ toán hạng bên trái và gán kết quả lại cho toán hạng bên trái.*=
: Nhân toán hạng bên trái với toán hạng bên phải và gán kết quả lại cho toán hạng bên trái./=
: Chia toán hạng bên trái cho toán hạng bên phải và gán kết quả lại cho toán hạng bên trái.%=
: Chia lấy dư toán hạng bên trái cho toán hạng bên phải và gán kết quả lại cho toán hạng bên trái.
Toán tử so sánh trên bit
Toán tử so sánh trên bit được sử dụng để thực hiện các phép toán logic trên từng bit của hai toán hạng và trả về kết quả là một giá trị mới. Dưới đây là một số toán tử so sánh trên bit và ý nghĩa của chúng:
&
: Sao chép bit 1 nếu nó tồn tại trong cả hai toán hạng tại vị trí tương ứng, ngược lại bit kết quả bằng 0.|
: Sao chép bit 1 nếu nó tồn tại trong một trong hai toán hạng tại vị trí tương ứng, ngược lại bit kết quả bằng 0.^
: Sao chép bit 1 nếu nó chỉ tồn tại trong một toán hạng tại vị trí tương ứng, ngược lại bit kết quả bằng 0.~
: Đảo ngược bit 0 thành 1 và ngược lại.<<
: Dịch trái n bit. Toán hạng bên trái được dịch trái n bit với n được xác định bởi toán hạng bên phải.>>
: Dịch phải n bit. Toán hạng bên trái được dịch phải n bit với n được xác định bởi toán hạng bên phải.
Toán tử khác
Ngoài những toán tử đã giới thiệu ở trên, trong C# còn có nhiều toán tử khác như sizeof()
, typeof()
, new
, is
, as
, ?:
, ,
,… Tuy nhiên, những toán tử này ít được sử dụng trong thực tế nên không được trình bày chi tiết trong bài viết này.
Độ ưu tiên của toán tử
Độ ưu tiên của các toán tử biểu thị toán tử nào được ưu tiên thực hiện trước trong một biểu thức. Dưới đây là bảng tổng hợp độ ưu tiên của các toán tử trong C#:
Mức Toán tử Thứ tự
Cao nhất () [] . Trái sang phải
+ - ++ - ! ~ new sizeof typeof
Phải sang trái
* / % Trái sang phải
+ - Trái sang phải
< > <= >= Trái sang phải
== != Trái sang phải
& Trái sang phải
^ Trái sang phải
| Trái sang phải
&& Trái sang phải
|| Trái sang phải
?: Trái sang phải
= += -= *= /= %= Phải sang trái
, Thấp nhất
Bảng trên chỉ thể hiện những toán tử chúng ta đã học. Trong thực tế, còn có nhiều toán tử khác, nhưng chúng ít được sử dụng nên không đề cập trong bài viết này.
Để thay đổi thứ tự thực hiện của các toán tử trong biểu thức, bạn có thể sử dụng cặp ngoặc tròn để nhóm chúng lại.
READ MORE:
Ví dụ chương trình sử dụng một số toán tử
Ví dụ 1: Các phép toán cơ bản
static void Main(string[] args) {
int a, b, c;
a = b = (c = 9) + 1; // khởi tạo giá trị: a = 10, b = 10, c = 9
a += b; // tương đương a = a + b
b = c++; // thực hiện gán giá trị c cho biến b sau đó thực hiện c = c + 1
-c; // thực hiện c = c - 1
Console.WriteLine(" a = {0}, b = {1}, c = {2}", a, b, c);
Console.ReadKey();
}
Xem thêm : 99+ Bài tập Toán tư duy lớp 2 CÓ ĐÁP ÁN cho trẻ luyện tập mỗi ngày
Kết quả khi chạy chương trình:
a = 20, b = 10, c = 10
Ví dụ 2: Kết hợp các phép toán để kiểm tra số chẵn lẻ
static void Main(string[] args) {
string strSoNguyen; // Biến chứa dữ liệu nhập vào từ bàn phím
int SoNguyen; // Biến chứa số nhập vào từ bàn phím
string KetQua; // Biến chứa kết quả kiểm tra số vừa nhập là chẵn hay lẻ
strSoNguyen = Console.ReadLine(); // Đọc dữ liệu nhập vào từ bàn phím (dữ liệu này ở dạng chuỗi) sau đó gán giá trị vào biến strSoNguyen
SoNguyen = Int32.Parse(strSoNguyen); // Ép kiểu dữ liệu vừa nhập vào (dạng chuỗi) sang dạng số rồi gán giá trị vào biến SoNguyen
KetQua = (SoNguyen % 2 == 0) ? "số chẵn" : "số lẻ"; // Sử dụng toán tử 3 ngôi để kiểm tra số chẵn lẻ
Console.WriteLine("{0} là {1}", SoNguyen, KetQua); // In kết quả ra màn hình
Console.ReadKey();
}
Đầu tiên, chúng ta có 3 biến: strSoNguyen
, SoNguyen
, và KetQua
. Biến strSoNguyen
chứa giá trị nhập vào từ bàn phím dưới dạng chuỗi. Biến SoNguyen
chứa giá trị nhập vào từ bàn phím sau khi ép kiểu sang kiểu số. Biến KetQua
chứa kết quả kiểm tra số vừa nhập là chẵn hay lẻ.
Tiếp theo, chúng ta nhận giá trị nhập vào từ bàn phím bằng lệnh Console.ReadLine()
và gán giá trị cho biến strSoNguyen
. Sau đó, chúng ta ép kiểu giá trị của biến strSoNguyen
sang kiểu số và gán giá trị vào biến SoNguyen
.
Sử dụng toán tử 3 ngôi để kiểm tra xem số nhập vào có chia hết cho 2 hay không (nếu chia hết cho 2 thì kết quả của phép chia dư với 2 sẽ là 0 và biểu thức SoNguyen % 2 == 0
sẽ trả về true
). Nếu chia hết, biến KetQua
sẽ được gán giá trị là "số chẵn"
, ngược lại sẽ là "số lẻ"
.
Cuối cùng, chúng ta in kết quả ra màn hình.
Đó là một số ví dụ cơ bản về toán tử trong C#. Hi vọng qua bài viết này, bạn đã hiểu rõ hơn về các toán tử và cách sử dụng chúng trong chương trình C#. Hãy luyện tập và áp dụng những kiến thức này vào thực tế để nâng cao kỹ năng lập trình của mình.
Cảm ơn bạn đã theo dõi bài viết này. Nếu bạn có bất kỳ câu hỏi hay góp ý nào, hãy để lại bình luận. Hãy luôn “Luyện tập – Thử thách – Không ngại khó”.
Nguồn: https://ispacedanang.edu.vn
Danh mục: Học tập