Tải bản đầy đủ (.docx) (223 trang)

Giáo trình mô đun Lập trình windows forms (Nghề Công nghệ thông tin Trình độ cao đẳng)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.82 MB, 223 trang )

BM/QT10/P.ĐTSV/04/04

UBND TỈNH BÀ RỊA – VŨNG TÀU
TRƯỜNG CAO ĐẲNG KỸ THUẬT CƠNG NGHỆ

GIÁO TRÌNH
MƠ ĐUN: LẬP TRÌNH WINDOWS FORMS
NGHỀ: CƠNG NGHỆ THƠNG TIN
TRÌNH ĐỘ: CAO ĐẮNG
(Ban hành kèm theo Quyết định số:
/QĐ-CĐKTCN
ngày…….tháng….năm ................... của Hiệu trưởng Trường Cao đẳng Kỹ thuật
Công nghệ BR – VT)


BÀ RỊA-VŨNG TÀU


TUYÊN BỐ BẢN QUYỀN
Nhằm đáp ứng nhu cầu học tập và nghiên cứu cho giảng viên và sinh viên
nghề Công nghệ Thông tin trong trường Cao đẳng Kỹ thuật Công nghệ Bà Rịa –
Vũng Tàu, chúng tôi đã thực hiện biên soạn tài liệu Lập trình Windows Forms
này.
Tài liệu được biên soạn thuộc loại giáo trình phục vụ giảng dạy và học tập,
lưu hành nội bộ trong Nhà trường nên các nguồn thơng tin có thể được phép
dùng ngun bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo.
Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh
doanh thiếu lành mạnh sẽ bị nghiêm cấm.


LỜI GIỚI THIỆU


Giáo trình Lập trình Windows Forms được biên soạn dựa trên khung
chương trình đào tạo Cao đẳng nghề Công nghệ Thông tin đã được Trường Cao
đẳng Kỹ thuật Công nghê Bà Rịa – Vũng Tàu phê duyệt.
Bên cạnh đó nhằm giúp cho người học các kiến thức và kỹ năng cần thiết
để thiết kế và lập trình được các ứng dụng nhỏ trong cuộc sống hằng ngày .
Tác giả đã nghiên cứu một số tài liệu, trang web liên quan kết hợp với kinh
nghiệm làm việc, giảng dạy thực tế để biên soạn giáo trình này.
Trong giáo trình này bao gồm các bài sau:
Bài 1: Giới thiệu tổng quan
Bài 2: Các thành phần cơ bản
Bài 3: Sử dụng câu lệnh nhập xuất cơ bản, cấu trúc điều khiển if
Bài 4: Sử dụng cấu trúc lựa chọn switch..case, for, for each
Bài 5: Sử dụng cấu trúc vòng lặp while, do…while
Bài 6: Sử dụng câu lệnh break, continue, goto
Bài 7: Hàm
Bài 8: Thiết kế lớp đối tượng
Bài 9: Định nghĩa các thuộc tính, phương thức hành động cho lớp đối
tượng
Bài 10: Sử dụng Form, MenuStrip
Bài 11: Sử dụng Button, Label, TextBox
Bài 12: Sử dụng Checkbox, RadioButton, GroupBox
Bài 13: Sử dụng ComboBox, ListBox
Bài 14: Sử dụng DateTimePicker, MonthCalendar
Bài 15: Sử dụng ListView, TreeView
5


Bài 16: Sử dụng PictureBox, ToolTip
Bài 17: Sử dụng CheckListBox, NumericUpDown
Bài 18: Sử dụng Panel, SplitContainer, TabControl

Bài 19: Tạo kết nối, đóng kết nối cơ sở dữ liệu
Bài 20: Truy xuất cơ sở dữ liệu bằng Dataset
Bài 21: Hiển thị cơ sở dữ liệu bằng DataGridView
Bài 22: Truy xuất cơ sở dữ liệu bằng BindingSource
Bài 23: Hiển thị cơ sở dữ liệu bằng BindingNavigator
Bài 24: Cập nhật cơ sở dữ liệu
Với tiêu chí trình bày cơ động, dễ hiểu áp dụng thực tế, kèm theo chi tiết
các bước hướng dẫn thực hành cụ thể giúp cho người học dễ tiếp thu các kiến
thức cần thiết và hình thành được kỹ năng thực hành và rèn luyện thao tác.
Trong quá trình biên soạn, chắc chắn giáo trình cịn nhiều thiếu sót. Tác giả
rất mong nhận được ý kiến đóng góp của q thầy/cơ và các em sinh viên để
tiếp tục hồn thiện hơn.
Xin chân thành cảm ơn quý đồng nghiệp, bạn bè đã có những ý kiến đóng
góp trong q trình xây dựng giáo trình này.
Bà Rịa – Vũng Tàu, ngày …… tháng …… năm 2020
Tham gia biên soạn
1. Trần Thị Thanh Hương – Chủ biên

7


MỤC LỤC

9


GIÁO TRÌNH MƠ ĐUN
Tên mơ đun: Lập trình Windows forms
Mã mơ đun: MĐ 20
Vị trí, tính chất, ý nghĩa và vai trị của mơ đun:

- Vị trí của mơ đun: Mơ đun được bố trí sau khi học sinh học xong các mơ đun
Cơ sở dữ liệu, Lập trình căn bản, Quản trị cơ sở dữ liệu SQL Server
- Tính chất của mô đun: Là mô đun chuyên môn nghề. Đây là mô đun chứa đựng
kiến thức nền tảng về ngơn ngữ lập trình ứng dụng và xây dưng các phần mềm
ứng dụng quản lý.
- Ý nghĩa và vai trò của môn học/mô đun: Môn học giúp thực hành được các
giao diện lập trình ứng dụng nhỏ như: quản lý quán café, quản lý khách sạn,
quản lý nhân viên, quản lý sinh viên….
Mục tiêu của mô đun:
- Về kiến thức:
+ Trình bày các kiểu dữ liệu cơ bản của C#.
+ Trình bày các câu lệnh, cấu trúc điều khiển, rẽ nhánh.
+ Trình bày các control xây dựng giao diện.
- Về kỹ năng:
+ Xác định, phân tích chức năng yêu cầu để lên kế hoạch xây dựng chương
trình ứng dụng.
+ Thiết kế giao diện chương trình ứng dụng.
+ Vận dụng các kiến thức xây dựng các chức năng của ứng dụng.
+ Kiểm tra và xử lý có hệ thống các lỗi và sự cố ứng dụng.
+ Đóng gói ứng dụng và triển khai.
- Về năng lực tự chủ và trách nhiệm:
+ Chủ động trong việc thực tế hóa các ứng dụng phần mềm (Xây dựng các
ứng dụng làm toán,..)
+ Phát triển các chương trình ứng dụng trong quá trình học tập thành các
phần mềm quản lý (Nhà hàng, khách sạn, bán hàng, giáo dục…) trong thực
tế.
11


+ Gia công các phần mềm theo yêu cầu khách hàng.

+ Tham gia các đội triển khai phần mềm trong các dự án phần mềm.
Nội dung của mô đun:

13


BÀI 1: GIỚI THIỆU TỔNG QUAN
Mã bài: 19.01
Giới thiệu:
C# hay Csharp là một trong những ngơn ngữ lập trình trong họ DotNet
của Microsoft và khi lập trình C# người lập trình phải chuẩn bị và cài đặt .NET
Framework.
Mục tiêu:
- Trình bày nhu cầu xây dựng các ứng dụng thực tế.
- Cài đặt, thao tác chương trình ViSual Studio.
- Thao tác hệ thống trợ giúp từ trình đơn Help.
- Rèn luyện tính cẩn thận, sáng tạo, làm việc nhóm.
Nội dung chính:
1.1. Giới thiệu các ứng dụng thực tế
.NET Framework là gì ?
.NET Framework là nền tảng phát triển hoàn hảo của Microsoft, cung cấp cho
lập
trình viên các thư viện dùng chung hỗ trợ cho việc phát triển các kiểu ứng dụng
khác nhau bao gồm:
- Ứng dụng ASP.NET
- Ứng dụng Windows Form
- Web Services
- Windows Services
- Ứng dụng mạng và các ứng dụng điều khiển truy cập từ xa
Các ứng dụng thực tế:

- Quản lý khách sạn
- Quản lý bệnh viện
- Quản lý đào tạo
- Quản lý sinh viên
- Quản lý thư viện
….
15


1.2. Khởi động, thốt chương trình
Để
tải
Visual
Studio

2019,

thực

hiện

vào

link: />
Hình 1.1. Màn hình Download phần mềm cài đặt Visual Studio
Ở trên có 3 phiên bản Visual Studio 2019. Đó là: Community, Professional và
Enterprise. Với Sinh Viên thì tải bản Community là được.
File sau khi tải được được lưu trữ như sau:

Hình 1.2. Hiển thị file lưu trữ cài đặt Visual Studio

Nhấp chọn vào file vs_enterprise_....exe để tiến hành cài đặt

17


Hình 1.3. Màn hình download tiến hành cài đặt
Tùy vào tốc độ của máy cũng như đường truyền mạng, sau khi tải xong ta sẽ có
màn hình như dưới đây:

Hình 1.4. Màn hình lựa chọn để cài đặt
Chọn Desktop Application (Winform, WPF). Tương tự cho Universal Windows
Platform development , Mobile (Xamarin) thì nhấp chọn vào.
Chú ý chọn thêm ít nhất là 2 tính năng: Hiển thị mơ hình lớp (class Diagram) và
tăng tốc lập trình với LINQ:

19


Hình 1.5. Lựa chọn cấu hình cài đặt
Trong màn hình Đăng nhập để bấm Sign In. Dùng tài khoản Gmail hoặc tài
khoản Microsoft để đăng nhập bản quyền dùng Visual Studio.

Hình 1.6. Chọn đăng nhập tài khoản để tiến hành đăng ký Viusual Studio
Chọn Personal account:

21


Hình 1.7. Đăng nhập username và mật khẩu
Cung cấp mật khẩu rồi Sign in bình thường.

Khởi động chương trình Visual Studio 2019

Hình 1.8. Màn hình khởi động chương trình Visual Studio
Màn hình sau khi khởi động thành cơng

Hình 1.9. Lựa chọn chức năng làm việc
Ở màn hình có 3 lựa chọn chính:
- Open a project or solution: chọn mở những Project cũ (nếu đã tạo trước đó
hoặc kể cả ở các Version cũ cũng tự động mở lại).
23


- Continue without code: Chọn mục này sẽ mở Visual Studio mà khơng có
Project nào cả
- “Create a New Project”: Chương trình sẽ hiển thị màn hình tạo Project mới.

Hình 1.10. Lựa chọn mơi trường và ngơn ngữ làm việc
Tìm kiếm, lọc theo: Ngơn ngữ lập trình (C#, VB..), lọc theo Platform(Android,
IOS, Windows…), theo Project Type(Cloud, Console, Machine Learning…).

Hình 1.11. Màn hình lựa chọn nơi lưu Project
1.3. Sử dụng hệ thống trợ giúp
Nhấp vào mục Help và chọn View Help (Ctrl + F1) để tìm tài liệu khắc phúc các
lỗi trong trang web:
/>25


Câu hỏi ôn tập và bài tập
1. Tiến hành cài đặt Visual Studio trên máy tính.
2. Tạo các ứng dụng project bằng Console và C#, lưu trữ trên máy tính gồm 2

bài tập Console với tên: BTCB1,BTCB2 và 2 bài tập Form với tên: LTWF1,
LTWF2.

27


BÀI 2: CÁC THÀNH PHẦN CƠ BẢN
Mã bài: 19.02
Giới thiệu:
Việc hiểu rõ các thành phần cơ bản và cách thức sử dụng của ngơn ngữ
lập trình sẽ giúp chúng ta làm việc dễ dàng hơn khi thực hành, thao tác với ngơn
ngữ. Hệ thống các từ khóa, các kiểu dữ liệu cơ bản, cách xây dựng biểu thức,
biến, hằng khi xây dựng chương trình.
Mục tiêu:
- Trình bày và sử dụng hệ thống ký hiệu, từ khóa, kiểu dữ liệu cơ bản, biến,
biểu thức.
- Vận dụng các loại biến, hằng biểu thức vào các bài tập mẫu.
- Vận dụng các loại biến, hằng biểu thức vào bài tập ứng dụng.
- Rèn luyện tính cẩn thận, tự giác, sáng tạo, làm việc nhóm.
Nội dung chính:
2.1. Hệ thống ký hiệu và từ khóa
C# là ngơn ngữ có ít từ khóa: là ngơn ngữ sử dụng giới hạn các từ khóa, chỉ
khoảng 80 từ khóa và hơn 10 kiểu dữ liệu được xây dựng sẵn như bảng 1.1.
Bảng 2.1: Bảng mô tả các từ khóa của C#
abstract
as
base
bool
break
byte

case
catch
char
checked
class
const
continue

default
delegate
do
double
else
enum
event
explicit
extern
false
finally
fixed
float

foreach
goto
if
implicit
in
int
interface
internal

is
lock
long
namespace
new

object
operator
out
override
params
private
protected
public
readonly
ref
return
sbyte
sealed

sizeof
stackalloc
static
string
struct
switch
this
throw
true
try

typeof
uint
ulong

unsafe
ushort
using
virtual
volatile
void
while
decimal
for
null
short
unchecked

2.2. Các kiểu dữ liệu cơ bản
Kiểu giá trị thường là các kiểu do C# định nghĩa sẵn bao gồm: double, char, int,
float, enum, struct, ….

29


Biến của kiểu giá trị lưu trữ một giá trị thực, giá trị này được lưu trữ trong
stack, không thể mang giá trị null và phải chứa giá trị xác định.
Bảng 2.2: Bảng mô tả các kiểu dữ liệu giá trị trong C#
Kiểu

Số

Byte

Kiểu

C#
byte
char
bool
sbyte
short
ushort

1
2
1
1
2
2

.NET
Byte
Char
Boolean
Sbyte
Int16
Uint16

int

4


Int32

uint

4

Uint32

float

4

Single

Mô tả
Số nguyên dương không dấu: 0 đến 255
Ký tự Unicode
Giá trị logic true/ false
Số nguyên có dấu: -128 đến 127
Số nguyên có dấu: -32.768 đến 32.767
Số nguyên khơng dấu: 0 đến 65.535
Số ngun có dấu: -2.147.483.647 đến
2.147.483.647
Số nguyên không

dấu:

0


đến

4.294.967.295
Kiểu dấu chấm động, giá trị xấp xỉ từ
3,4E-38 đến 3,4E+38; với 7 chữ số có
nghĩa
Kiểu dấu chấm động, giá trị xấp xỉ từ

double

8

Double

1,7E-308 đến 1,7E+308; với 15, 16 chữ
số có nghĩa
Có độ chính xác đến 28 con số và giá trị

decimal

8

Decimal

thập phân, được dùng trong tính tốn tài
chính, kiểu này địi hỏi phải có hậu tố
“m” hay “M” theo sau giá trị
Kiểu số nguyên có dấu có giá trị trong

long


ulong

8

8

Int64

Uint64

khoảng: -9.233.370.036.854.775.808 đến
– 9.233.372.036.854.775.807
Số nguyên không dấu từ

0

đến

0xffffffffffffff

Lưu ý:
Kiểu số thực: Trình biên dịch ln hiểu bất cứ một số thực nào cũng là một số
kiểu double trừ khi khai báo rõ ràng, do đó để gán một số kiểu float thì số phải
có ký tự theo sau.
31


Ví dụ 1.5: float a=0.15f;
Kiểu giá trị bool trong C# nhất thiết phải là true hoặc false.

Chuyển kiểu dữ liệu:
Chuyển đổi kiểu dữ liệu trong C# có thể thực hiện bằng các cách sau:
 Sử dụng lớp Convert:
Đây là một lớp được C# xây dựng sẵn phục vụ cho việc chuyển đổi từ kiểu dữ
liệu này sang kiểu dữ liệu khác. Các phương thức trong lớp Convert phần lớn
đều là phương thức tĩnh:
- ToInt32(<Tham số>)
- ToInt64(<Tham số>)
- ToString(<Tham số>)
- ToDouble(<Tham số>)
- ToBoolean(<Tham số>)
- ToByte(<Tham số>)

<Tham số>: có thể là chuỗi ký tự, hằng số, biến số nguyên, số thực hoặc kiểu
bool. Nếu trong quá trình chuyển kiểu đặt tham số là null thì hàm Convert sẽ trả
về giá trị mặc định.
int a = Convert.ToInt32(“10”); //chuyển chuỗi 10 sang số nguyên
bool b = Convert.ToBoolean(27); //chuyển số 27 sang kiểu boolean
bool a = Convert.ToBoolean(“hello”); //Sai định dạng, không chuyển được
int b = Convert.ToInt32(“123456787654”); //Tràn bộ nhớ, không chuyển được
double d = Convert.ToDouble(null); //Trả về giá trị mặc định
Sử dụng phương thức Parse:
Phương thức Parse thường được sử dụng để chuyển đổi chuỗi sang một kiểu dữ
liệu cụ thể nào đó. Mỗi kiểu dữ liệu xây dựng sẵn trong C# đều hỗ trợ phương
thức Parse để chuyển đổi chuỗi sang kiểu dữ liệu tương ứng:
- Double.Parse(<chuoi>): Chuyển chuỗi về kiểu Double
- Int32.Parse(<chuoi>): Chuyển chuỗi về kiểu Int32
- Int64.Parse(<chuoi>): Chuyển chuỗi về kiểu Int64
33



- Boolean.Parse(<chuoi>): Chuyển chuỗi về kiểu Boolean
- Single.Parse(<chuoi>): Chuyển chuỗi về kiểu Single
-…
Ví dụ
int a = Int32.Parse(“123”); //a sẽ mang giá trị 123
float b = Float.Parse(“20.7”); //b sẽ mang giá trị 20.7
bool c = Boolean.Parse(“true”); //c sẽ mang giá trị true
int a = Int32.Parse(“Hello”); //sai định dạng, không chuyển được
byte b = Byte.Parse(“10000000000”); //quá giới hạn, không chuyển được
bool c = Boolean.Parse(null); //tham số là null, không chuyển được
2.3. Biến, hằng, biểu thức
2.3.1. Biến
Biến là nơi lưu trữ dữ liệu của chương trình. Dữ liệu của biến nằm trong bộ nhớ
vật lý của Ram và có thể thay đổi được. Muốn sử dụng biến trước tiên lập trình
phải chỉ định biến có một kiểu dữ liệu cụ thể nào đó.
 Cú pháp khai báo biến:
<Kiểu dữ liệu> <Tên biến>
Lưu ý: Tên biến phải được đặt phù hợp với quy tắc đặt tên
 Cú pháp khởi tạo giá trị cho biến:
<Tên biến> = <giá trị>
Trong đó:
= là phép tốn gán giá trị
Quy tắc đặt tên: Các tên biến, tên hằng, tên hàm, … trong C# đề phải đặt tên
đúng với quy tắc sau:
 Một tên biến có thể bắt đầu bằng chữ hoa hay chữ thường. Tên có thể chứa ký
tự
hay số và ký tự gạch dưới (_).
 Ký tự đầu tiên của biến phải là ký tự , không được là số.
 Trong C# phân biệt hoa thường.


35


 Các từ khóa khơng thể sử dụng để đặt tên cho biến. Nếu muốn dùng từ khóa
đặt tên thì ta thêm ký tự @ phía trước.
Ví dụ:
Employee:

Hợp lệ

student:

Hợp lệ

_Name:

Hợp lệ

Emp_Name:

Hợp lệ

@goto:

Hợp lệ

static:

Khơng hợp lệ, trùng từ khóa


4myclass:

Khơng hợp lệ, không thể bắt đầu bằng ký tự số

Student&Falculty: Không hợp lệ, không được chứa ký tự đặc biệt
2.3.2. Hằng
Hằng cũng là một biến nhưng giá trị của hằng không thay đổi. Biến là công cụ
rất mạnh, tuy nhiên khi làm việc với một giá trị được định nghĩa là không thay
đổi, ta phải đảm bảo giá trị của nó khơng được thay đổi trong suốt chương trình.
Ví dụ, khi lập một chương trình thí nghiệm hóa học liên quan đến nhiệt độ sơi,
hay nhiệt độ đơng của nước, chương trình cần khai báo hai biến là DoSoi và
DoDong, nhưng không cho phép giá trị của hai biến này bị thay đổi hay bị gán.
Để ngăn ngừa việc gán giá trị khác, ta phải sử dụng biến kiểu hằng.
Hằng được phân thành ba loại: giá trị hằng (literal), biểu tượng hằng (symbolic
constants), kiểu liệu kê (enumerations).
Giá trị hằng: ta có một câu lệnh gán như sau:
x = 100;
Giá trị 100 là giá trị hằng. Giá trị của 100 luôn là 100. Ta không thể gán giá trị
khác cho 100 được.
Biểu tượng hằng: gán một tên cho một giá trị hằng, để tạo một biểu tượng hằng
dùng từ khóa const và cú pháp sau:
<const> <type> <tên hằng> = <giá trị>;

Một biểu tượng hằng phải được khởi tạo khi khai báo, và chỉ khởi tạo duy nhất
một lần trong suốt chương trình và không được thay đổi.
37


const int DoSoi = 100;


Trong khai báo trên, 100 là một hằng số và DoSoi là một biểu tượng hằng có
kiểu ngun.
2.4. Các phép tốn
2.4.1. Tốn tử (Operator) trong C#
Các phép tốn này khơng thể thiếu trong mọi ngơn ngữ lập trình nào và C# cũng
vậy
Bảng 2.3: Bảng mơ tả các tốn tử trong C#
Tốn tử

Tên

Ví dụ

Kết quả

+

Cộng

x+y

Tổng của x và y

-

Trừ

x-y


Hiệu của x và y

*

Tích

x*y

Tích của x và y

/

Chia

x/y

Phần nguyên của thương x chia y

%

Chia dư

x%y

Phần dư của thương x chia y

Ví dụ:

2.4.2. Tốn tử gán
39



Một số toán tử gán được sử dụng trong C#:
Bảng 2.4: Bảng mơ tả các tốn tử phép gán trong C#
Tốn tử

Ví dụ

Kết quả

=

x=y

Gán giá trị y cho x

+=

x+=y

Gán giá trị x = x+y

-=

x-=y

Gán giá trị x = x-y

*=


x*=y

Gán giá trị x = x*y

/=

x/=y

Gán giá trị x = x/y

%=

x%=y

Gán giá trị x = x%y

<<=

x<<=3

Gán giá trị x = x<<3

>>=

x>>=3

Gán giá trị x = x>>3

&=


x&=2

Gán giá trị x = x&2 (Phép AND bit)

^=

x^=2

Gán giá trị x = x^2 (Phép OR loại trừ
bit)

|=

x|=2

Gán giá trị x = x|2 (Phép OR bit)

Ví dụ:

41


Kết quả khi chạy chương trình trên
2.4.3. Tốn tử tăng giảm tiền tố và hậu tố:
Giả sử ta muốn tăng giá trị của một biến x rồi gán nó cho biến y, ta làm như sau:
y = x++; hoặc y = ++x;
Vậy đâu là điểm khác biệt giữa 2 cú pháp trên ? Giả sử cho giá trị của biến x =
9 ta cùng đi phân tích nhé.
Khi lệnh y = x++; được thực hiện thì phép gán sẽ được thực hiện trước tiên
và sau đó mới đến phép tốn tăng. Ta gọi đây là tăng hậu tố, và giá trị của các

biến bây giờ là x = 10 và y = 9.
Còn đối với lệnh y = ++x; phép toán tăng sẽ được thực hiện trước rồi mới
đến toán tử gán. Ta gọi đây là tăng tiền tố, các giá trị của x và y bây giờ là như
nhau và đều bằng 10.
43


2.4.4. Tốn tử logic
Đơi lúc chúng ta muốn kết hợp nhiều điều kiện với nhau ví dụ như bắt buộc cả
hai biểu thức điều kiện đều đúng hoặc chỉ cần một biểu thức đúng thì mới thực
hiện một lệnh gì đó. Trong C# hỗ trợ 3 tốn tử logic như sau:
Bảng 2.5: Bảng mơ tả các tốn tử logic trong C#
Toán tử


hiệu

Cú pháp

AND

&&

<BT1>
<BT2>

OR

||


<BT1>||<BT2>

Trả về true nếu 1 trong 2 biểu
thức đúng

NOT

!

!(BT)

Trả về phủ định của biểu thức
trong ngoặc

Miêu tả
&&

Trả về true nếu cả 2 đều đúng

2.4.5. Toán tử quan hệ
Các toán tử quan hệ thường được dùng để so sánh giữa hai giá trị, và sau đó trả
về kết quả là một giá trị logic kiểu boolean (true hoặc false).
Giả sử ta có biến x = 5 và y = 3. Các tốn tử trong C# được trình bày như bản
dưới đây:
Bảng 2.6: Bảng mơ tả các tốn tử quan hệ trong C#
Tốn tử

Ký hiệu

Biểu

sánh

So sánh bằng

==

x==5

true

Khơng bằng

!=

x!=y

true

Lớn hơn

>

x>y

true

Lớn hơn hay bằng

>=


x>=y

true

Nhỏ hơn

<

x
false

Nhỏ hơn hay bằng

<=

x<=y

false

45

thức

so

Kết quả so sánh


Lưu ý: toán tử so sánh bằng (==) được ký hiệu bởi hai dấu bằng dính liền nhau

và khơng có bất kỳ khoảng cách nào giữa chúng. Trình biên dịch C# xem đây là
một toán tử
* Biểu thức
Những câu lệnh mà thực hiện việc đánh giá một giá trị gọi là biểu thức. Một
phép gán một giá trị cho một biến cũng là một biểu thức:
var1 = 24;
Trong câu lệnh trên phép đánh giá hay định lượng chính là phép gán có giá trị là
24 cho biến var1. Lưu ý là tốn tử gán (‘=’) khơng phải là tốn tử so sánh. Do
vậy khi sử dụng tốn tử này thì biến bên trái sẽ nhận giá trị của phần bên phải.
Các tốn tử của ngơn ngữ C# như phép so sánh hay phép gán sẽ được trình bày
chi tiết trong mục toán tử của chương này.
Do var1 = 24 là một biểu thức được định giá trị là 24 nên biểu thức này có thể
được xem như phần bên phải của một biểu thức gán khác:
var2 = var1 = 24;
Lệnh này sẽ được thực hiện từ bên phải sang khi đó biến var1 sẽ nhận được giá
trị là 24 và tiếp sau đó thì var2 cũng được nhận giá trị là 24. Do vậy cả hai biến
đều cùng nhận một giá trị là 24. Có thể dùng lệnh trên để khởi tạo nhiều biến có
cùng một giá trị như:
a = b = c = d = 24;
* Khoảng trắng (whitespace)
Trong ngôn ngữ C#, những khoảng trắng, khoảng tab và các dòng được xem như
là khoảng trắng (whitespace), giống như tên gọi vì chỉ xuất hiện những khoảng
trắng để đại diện cho các ký tự đó. C# sẽ bỏ qua tất cả các khoảng trắng đó, do
vậy chúng ta có thể viết như sau:
var1=24; Hay var1 = 24; và trình biên dịch C# sẽ xem hai câu lệnh trên
là hoàn toàn giống nhau.
Tuy nhiên lưu ý là khoảng trắng trong một chuỗi sẽ không được bỏ qua. Nếu
chúng ta viết:
System.WriteLine(“Xin chao!”);


47


×