1. Trang chủ
  2. » Công Nghệ Thông Tin

Giáo trình Lập trình C#1 (Nghề: Lập trình máy tính-CĐ) - CĐ Cơ Giới Ninh Bình

131 10 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 131
Dung lượng 1,87 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

(NB) Giáo trình Lập trình C#1 với mục tiêu giúp các bạn có thể trình bày được các kiến thức về nền tảng Microsoft .NET; Trình bày được các kiến thức và kỹ năng về lập trình hướng đối tượng trên C#; Trình bày được cú pháp các lệnh cơ bản trong C#; Trình bày được các bước xây dựng lớp đối tượng; Mô tả được các bước nạp chồng hàm, chồng toán tử; Trình bày các kiến thức cơ bản về mảng, chuỗi.

Trang 1

B  NÔNG NGHI P VÀ PHÁT TRI N NÔNG THÔN Ộ Ệ Ể

TRƯỜNG CAO Đ NG C  GI I NINH BÌNHẲ Ơ Ớ

GIÁO TRÌNH

NGH : Ề L P TRÌNH MÁY TÍNHẬTRÌNH Đ : CAO Đ NG Ộ Ẳ

Ban hành kèm theo Quy t đ nh s :        /QĐ­TCĐCGNB ế ị ố

   ngày….tháng….năm 2017  c a Tr ủ ườ ng Cao đ ng  C  gi i Ninh ẳ ơ ớ  

Bình

 

Trang 2

Tam Đi p , năm 2017

Trang 3

TUYÊN B  B N QUY NỐ Ả Ề

Tài li u này thu c lo i sách giáo trình nên các ngu n thông tin có thệ ộ ạ ồ ể 

được phép dùng nguyên 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.ế ạ ẽ ị ấ

Trang 6

 GIÁO TRÌNH MÔ ĐUNTên mô đun: L p trình C# 1

Mã s  mô đun: MĐ20

V  trí, tính ch t, ý nghĩa và vai trò c a mô đun:ị ấ ủ

­ V  trí:  Đây là mô đun ch a đ ng ki n th c n n t ng v  ngôn ng  l pị ứ ự ế ứ ề ả ề ữ ậ  trình C#, là mô đun h  tr  cho hai mô đun l p trình Windows 2 và l p trìnhỗ ợ ậ ậ  Windows 3. 

­ Tính ch t.ấ Mô đun này yêu c u đã h c qua các ki n th c v  l p trìnhầ ọ ế ứ ề ậ  

hướng đ i tố ượng, c u trúc d  li u.ấ ữ ệ

­ Ý nghĩa và vai trò c a đun: ủ

M c tiêu c a mô đun:ụ ủ

­ Ki n th c:ế ứ

+ Trình bày được các ki n th c v  n n t ng Microsoft .NET;ế ứ ề ề ả

+ Trình bày được các ki n th c và k  năng v  l p trình hế ứ ỹ ề ậ ướng đ i tố ượng trên C#;

+ Trình bày được cú pháp các l nh c  b n trong C#;ệ ơ ả

+ Trình bày được các bước xây d ng l p đ i tự ớ ố ượng;

+ Mô t  đả ược các bước n p ch ng hàm, ch ng toán t ;ạ ồ ồ ử

+ Trình bày các ki n th c c  b n v  m ng, chu i.ế ứ ơ ả ề ả ỗ

­ K  năng:ỹ

+ S  d ng thành th o các toán t ;ử ụ ạ ử

+ S  d ng đử ụ ược các ch  d n biên d ch;ỉ ẫ ị

+ S  d ng thành th o các c u trúc đi u khi n;ử ụ ạ ấ ề ể

+ Xây d ng đự ượ ớc l p, xây d ng l p có ch ng toán t ;ự ớ ồ ử

+ S  d ng đử ụ ược các l p c  s  c a NET.ớ ơ ở ủ

+ Khai báo và thao tác được v i m ng và chu i;ớ ả ỗ

­ Năng l c t  ch  và trách nhi m:  Rèn luy n tính c n th n, chính xác, đ mự ự ủ ệ ệ ẩ ậ ả  

b o an toàn cho ngả ười và trang thi t b ế ị

Trang 7

Gi i thi uớ ệ  : Trong bài này chúng ta s  nghiên c u khái quát v  ẽ ứ ề

Microsoft.NET, biên d ch và ngôn ng  C#.ị ữ

M c tiêu :

- Trình bày được n n t ng Microsoft .NET, trình biên d ch và MSIL, lýề ả ị  

do và l ch s  v  s  ra đ i c a ngôn ng  C#;ị ử ề ự ờ ủ ữ

- Mô t  đả ược khái quát v  ngôn ng  C#;ề ữ

­ Đ m b o an toàn cho ngả ả ười và thi t b ế ị

m tộ  qui ướ  nh tc ấ  đ nhị  để công vi cệ  đượ  trôi ch y.c ả

IDE  thì  cung  c pấ   m tộ   môi  trườ   giúp  chúng  ta  tri nng ể   khai  dễ  dàng, 

và nhanh chóng các  ng d ng d a trên n n t ng .NET. N u không có IDEứ ụ ự ề ả ế  chúng ta cũng có    th  dùngể  m tộ  trình so nạ  th oả  ví như Notepad hay b tấ  cứ trình so nạ  th oả  văn b nả  nào và sử d ng commandụ   line để  biên d chị   và  th cự  thi,  tuy  nhiên  vi cệ   này  m tấ   nhi uề   th iờ   gian.  T tố   nh tấ   là chúng ta dùng IDE phát tri n các  ng d ng, và cũng là cách d  s  d ngể ứ ụ ễ ử ụ  nh t.ấ

Tính năng c a Micosoft.NETủ

M t mô hình l p trình cho phép nhà phát tri n xây d ng các  ngộ ậ ể ự ứ  

d ng   d ch   v   webụ ị ụ   và   ng   d ng   client   v i   Extensible   Markup   Languageứ ụ ớ  (XML)

T pậ   h pợ   d chị   vụ  XML  Web,  như  Microsoft  NET  My  Services  cho phép nhà phát tri n đ n gi n và tích h p ngể ơ ả ợ ười dùng kinh nghi m.ệ

Cung c p các server ph c v  bao g m: Windows 2000, SQL Server,ấ ụ ụ ồ  

và  BizTalk Server, t t c  đi u tích h p, ho t đ ng, và qu n lý các d ch vấ ả ề ợ ạ ộ ả ị ụ XML Web và các  ng d ng.ứ ụ

Các ph nầ  m mề  client như Windows XP và Windows CE giúp ngườ  iphát  tri nể   phân ph i sâu và thuy t ph c ngố ế ụ ười dùng kinh nghi m thông quaệ  các dòng thi tế  b ị

Trang 8

Nhi u công c  h  tr  nh  Visual Studio .NET, đ  phát tri n các d chề ụ ỗ ợ ư ể ể ị  

v  Webụ   XML,  ng d ng trên n n Windows hay n n web m t cách d  dàngứ ụ ề ề ộ ể  

và hi uệ  qu ả

 Ki n trúc .NET ế  Framework

.NET  Framework  là  m tộ   platform  m iớ   làm  đ nơ   gi nả   vi cệ   phát  tri nể  ng

ứ   d ngụ   trong  môi trườ   phân  tán  c ang ủ   Internet.  NET  Framework  đượ  cthi tế  kế đ yầ  đủ để đáp  ngứ  theo quan đi mể  sau:

Để  cung  c pấ   m tộ   môi  trườ   l png ậ   trình  hướ   đ ing ố   tượ   v ngng ữ  

ch c,ắ   trong  đó  mã ngu nồ  đ iố  tượ  đng ượ  l uc ư  trữ và th cự  thi m tộ  cách c cụ  

b ộ  Th cự  thi c cụ  bộ nh ng đư ược phân tán trên Internet, ho c th c thi tặ ự ừ xa

Đ  cung c p m t môi trể ấ ộ ường th c thi mã ngu n mà t i thi u đự ồ ố ể ượ  c

vi c đóng góiệ  ph nầ  m m và s  tranh ch p v  phiênề ự ấ ề  b n.ả

Đ  cung c p m t môi trể ấ ộ ường th c thi mã ngu n mà đ m b o vi cự ồ ả ả ệ  

th c thi an toànự  mã ngu n, bao g m c  vi c mã ngu n đồ ồ ả ệ ồ ượ ạc t o b i hãngở  

th  ba hay b t c  hãng nàoứ ấ ứ  mà tuân th  theo ki n trúcủ ế  .NET

Đ  cung c p m t môi trể ấ ộ ường th c thi mã ngu n mà lo i b  đự ồ ạ ỏ ượ  c

nh ng l i th cữ ỗ ự   hi nệ  các script hay môi trường thông d ch.ị

Đ  làm cho nh ng ngể ữ ười phát tri n có kinh nghi m v ng ch c cóể ệ ữ ắ  

th  n m v ngể ắ ữ  nhi uề  ki uể   ngứ  d ngụ  khác nhau. Như là từ nh ngữ   ngứ  d ngụ  trên n nề  Windows đ nế  nh ng  ng d ng d a trênữ ứ ụ ự  web

Để xây d ngự  t tấ  cả các thông tin d aự  triên tiêu chu nẩ  công nghi pệ  

để đ mả  b oả  r ng mã ngu n trên .NET có th  tích h p v i b t c  mã ngu nằ ồ ể ợ ớ ấ ứ ồ  khác

.NET  Framework  có  hai  thành  ph nầ   chính:  Common  Language Runtime (CLR) và thư vi n l pệ ớ

Common Language Runtime (CLR): th cự  hi nệ  qu nả  lý bộ nh ,ớ  qu nả  

lý th cự  thi  ti uể  trình,  th cự   thi mã ngu n,ồ   xác nh nậ   mã  ngu nồ   an  toàn,  biên 

b chị  và các d chị  vụ hệ th ngố  khác. Nh ngữ  đ cặ  tính trên là n n t ng c  b nề ả ơ ả  cho nh ng mã ngu n đữ ồ ược qu n lý ch y trênả ạ  CLR

Trang 9

Th  vi n l p là hư ệ ớ ướng đ i tố ượng cung  c p nh ng ki u d  li u mà mãấ ữ ể ữ ệ  ngu n đồ ược qu n lý c a chúng ta có th  d n xu tả ủ ể ẫ ấ

2. Biên d ch và MSIL

Trong  NET  Framework,  chươ   trình  không  đng ượ   biên  d chc ị   vào  các 

t pậ  tin th cự  thi mà thay vào đó chúng được biên d ch vào nh ng t p tin trungị ữ ậ  gian g i là Microsoftọ   Intermediate Language  (MSIL).  Nh ngữ   t pậ   tin  MSIL 

đượ  t oc ạ  ra từ C# cũng tươ  tự như các t png ậ  tin MSIL đượ ạc t o ra t  nh ngừ ữ  ngôn ng  khác c a .NET, platform   đây không c n bi t ngôn ngữ ủ ở ầ ế ữ  c a mãủ  ngu n. Đi u quan tr ng chính y u c a CLR là chung (common), cùng m tồ ề ọ ế ủ ộ  runtime hỗ tr  phát tri n trong C# cũng nh  trongợ ể ư  VB.NET

Mã  ngu nồ   C#  đượ   biên  d chc ị   vào  MSIL  khi  chúng  ta  build  project. 

Mã  MSIL  này  đượ ưc l u vào trong m t t p tin trên đĩa. Khi chúng ta ch yộ ậ ạ  

chương trình, thì MSIL được biên  d ch m t l n n a, s  d ng trình biên d chị ộ ầ ữ ử ụ ị  Just­In­Time (JIT). K t qu  là mã máy đế ả ược th c thiự   b i b  x  lý c aở ộ ử ủ  máy

Trình biên d ch JIT tiêu chu n thì th c hi n theo yêu c u. Khi m tị ẩ ự ệ ầ ộ  

phương th c đứ ượ   g i,c ọ   trình  biên  d chị   JIT  phân  tích  MSIL  và  t oạ   ra  s nả  

ph mẩ   mã  máy  có  hi uệ   quả  cao,  mã  này  có  thể  ch y r t nhanh. Trình biênạ ấ  

d ch JIT đ  thông minh đ  nh n ra khi m t mã đã đị ủ ể ậ ộ ược biên  d ch, do v y khiị ậ  

ng d ng ch y thì vi c biên d ch ch  x y ra khi c n thi t, t c là ch  biên d ch

mã MSIL ch a biên d ch ra mã máy. Khi đó m t  ng d ng .NET th c hi n,ư ị ộ ứ ụ ự ệ  chúng có xu hướ  là ch y nhanh và nhanh h n n a, cũng nh  là nh ng mãng ạ ơ ữ ư ữ  ngu n đồ ược biên d ch r i thì đị ồ ượ  dùng l i.c ạ

Do t t c  các ngôn ng  .NET Framework cùng t o ra s n ph m MSILấ ả ữ ạ ả ẩ  

gi ng nhau, nênố  k t qu  là m t đ i tế ả ộ ố ượng đượ ạc t o ra t  ngôn ng  này có thừ ữ ể 

được truy c p hay đậ ược d n xu t  ẫ ấ  từ   m tộ   đ iố   tượ   c ang ủ   ngôn  ngữ khác trong .NET

3. Ngôn ng  C#

Ngôn ngữ C# khá đ nơ  gi n,ả  chỉ kho ngả  80 từ khóa và h nơ  mườ  m yi ấ  

ki uể  dữ li uệ  được xây d ngự  s n.ẵ  Tuy nhiên, ngôn ngữ C# có ý nghĩa cao khi 

nó th cự  thi nh ngữ  khái ni mệ  l p trình hi n đ i. C# bao g m t t c  nh ng hậ ệ ạ ồ ấ ả ữ ỗ 

tr  cho c u trúc, thành ph n component, l pợ ấ ầ ậ  trình hướ  đ ing ố  tượng

C# đượ  xây d ngc ự  trên n nề  t ngả  c a hai ngôn ng  m nh nh t là C++ủ ữ ạ ấ  

Trang 10

Ngôn ng  C# đữ ược phát tri n b i đ i ngũ k  s  c a Microsoft, trong đóể ở ộ ỹ ư ủ  

ngườ ẫi d n đ uầ   là Anders Hejlsberg và Scott Wiltamuth

Ngôn ng  C# ch a nh ng t  khóa cho vi c khai báo nh ng ki u l p đ iữ ứ ữ ừ ệ ữ ể ớ ố  

tượng m i và nh ng phớ ữ ương th c hay thu c tính c a l p, và cho vi c th c thiứ ộ ủ ớ ệ ự  đóng gói, k  th a,ế ừ   và đa hình, ba thu c tính c  b n c a b t c  ngôn ng  l pộ ơ ả ủ ấ ứ ữ ậ  trình hướng đ iố  tượng

Trong  ngôn  ngữ  C#  m iọ   thứ  liên  quan  đ nế   khai  báo  l pớ   đi uề   đượ  ctìm  th yấ   trong  ph nầ  khai  báo  c aủ   nó.  Đ nhị   nghĩa  m tộ   l pớ   trong  ngôn  ngữ C#  không  đòi  h iỏ   ph iả   chia  ra  t pậ   tin header  và  t pậ   tin  ngu nồ   gi ngố   như trong  ngôn  ngữ  C++.  H nơ   thế  n a,ữ   ngôn  ngữ  C#  hỗ  tr  ki uợ ể   XML,  cho phép chèn các tag XML để phát sinh tự đ ngộ  các document cho l p.ớ

C# cũng h  tr  giao di n ỗ ợ ệ interface, nó được xem nh  m t cam k t v iư ộ ế ớ  

m t l p choộ ớ  nh ng d chữ ị  vụ mà giao di nệ  quy đ nh.ị  Trong ngôn ngữ C#, m tộ  

l pớ   chỉ  có  thể  kế  th aừ   từ  duy  nh tấ   m tộ   l pớ   cha,  t cứ   là  không  cho  đa  kế 

th aừ  như trong ngôn ngữ C++, tuy nhiên m tộ  l pớ  có th  th cể ự  thi nhi uề  giao 

di n.ệ  Khi m tộ   l pớ   th cự  thi  m tộ   giao di nệ  thì nó  sẽ h aứ  là nó sẽ cung c pấ  

ch c năng th c thi giaoứ ự  di n.ệ

Trong ngôn ng  C#, nh ng c u trúc cũng đữ ữ ấ ược h  tr , nh ng kháiỗ ợ ư  

ni m v  ng  nghĩaệ ề ữ  c a nó thay đ i khác v i C++. Trong C#, m t c u trúcủ ổ ớ ộ ấ  

được gi i h n, là ki u d  li u nh  g n,ớ ạ ể ữ ệ ỏ ọ  và khi t o th  hi n thì nó yêu c u ítạ ể ệ ầ  

h n v  h  đi u hành và b  nh  so v i m t l p. M t c uơ ề ệ ề ộ ớ ớ ộ ớ ộ ấ   trúc thì không thể 

kế th aừ  từ m tộ  l pớ  hay đượ  kế th ac ừ  nh ngư  m tộ  c uấ  trúc có thể th cự  thi 

Trang 12

BÀI 2. NGÔN NG  C#

Mã bài: MĐ20_B02

Gi i thi u: ớ ệ Trong bài này chúng ta s  nghiên c u khái quát v  ngôn ng  C#:ẽ ứ ề ữ  

t i sao ph i dùng C#, các bạ ả ước đ  chu n b  cho chể ẩ ị ương trình và gi i thi uớ ệ  cho các b n bi t s  qua 1 chạ ế ơ ương trinh C# đ n gi n.ơ ả

M c tiêu:

­ Mô t  đả ược các đ c đi m n i b t c a ngôn ng  C#;ặ ể ổ ậ ủ ữ

­ Trình bày được các bước đ  vi t m t chể ế ộ ương trình trong C#;

­ Vi t đế ược chương trình C# đ n gi n;ơ ả

­ Đ m b o an toàn cho ngả ả ười và thi t b ế ị

1. T i sao ph i s  d ng ngôn ng  C#ạ ả ử ụ ữ

Trang 13

đượ ấc l y tr c ti p t  ngôn ng  C và C++, nh ng nóự ế ừ ữ ư  đã đượ  c ic ả  ti nế  để làm cho ngôn ngữ đ nơ  gi nả  h nơ

b. C# là ngôn ng  hi n ữ ệ  đ i

Nh ngữ   đ cặ   tính c a C#:ủ   xử  lý  ngo iạ   l ,ệ   thu  gom bộ  nhớ  tự  đ ng,ộ  

nh ngữ   ki uể   dữ  li uệ   mở  r ng,ộ   và  b oả   m tậ   mã  ngu n. Đâyồ   nh ngữ   đ cặ   tính 

được mong đ i trong m t ngôn ng  hi n đ i.ợ ộ ữ ệ ạ

c. C# là ngôn ng  h ữ ướ ng đ i  t ượ ng

Nh ngữ   đ cặ   đi mể   chính  c aủ   ngôn  ngữ  hướ   đ ing ố   tượ   (Object­ngoriented  language)  là  s  đóng gói (encapsulation), s  k  th a (inheritance),ự ự ế ừ  

e. C# là ngôn ng  ít t ữ ừ  khóa

C# là ngôn ngữ sử d ngụ  gi iớ  h nạ  nh ngữ  từ khóa

B ng sau li t kêả ệ  các t  khóa c a ngôn ngừ ủ ữ C#

abstr

act

default

foreach

Object

ushort

e

implicit

Override

alBrea

Catc

h

explicit

internal

nly

truechec

ked

Trang 14

cked

f. C# là ngôn ng  h ữ ướ ng  module

Mã ngu nồ  C#  có thể đượ  vi tc ế   trong nh ngữ  ph nầ  đượ   g ic ọ  là nh ngữ  

l p, nh ngớ ữ  l pớ  này ch aứ  các phươ  th cng ứ  thành viên c aủ  nó. Nh ngữ  l pớ  và 

nh ngữ  phươ  th cng ứ  có thể đượ  sử d ng l i trong  ng d ng hay các chc ụ ạ ứ ụ ươ  ngtrình khác

g. C# là m t ngôn ng  ph ộ ữ ổ  bi n ế

C# là ngôn ng  đ ng th  5 trong bi u đ  kh o sát 15 ngôn ng  s  d ngữ ứ ứ ể ồ ả ữ ử ụ  

ph  bi n nh t năm 2014.ổ ế ấ

2. Ngôn ng  C# v i ngôn ng  khácữ ớ ữ

Microsoft nói r ngằ  C# mang đ nế  s cứ  m nhạ  c aủ  ngôn ngữ C++ v iớ  sự 

dễ  dàng  c aủ   ngôn ng  Visual Basic. Có th  nó không d  nh  Visual Basic,ữ ể ễ ư  

nh ng v i phiên b nư ớ ả   Visual  Basic.NET (Version 7) thì ngang nhau. B i vìở  chúng được vi t l i t  m t n n t ng. Chúngế ạ ừ ộ ề ả   ta  có th  vi t nhi u chể ế ề ươ  ngtrình v i ít mã ngu n h n n u dùngớ ồ ơ ế  C#

M t đi u quan tr ng khác v i C++ là mã ngu n C# không đòi h i ph iộ ề ọ ớ ồ ỏ ả  

có t p tin  ậ   header

T t c  mã ngu n đấ ả ồ ược vi t trong khai báo m tế ộ  l p.ớ

Nh  đã nói   bên trên. .ư ở NET runtime trong C# th c hi n vi c thu gomự ệ ệ  

b  nh  t  đ ng.ộ ớ ự ộ  Do đi u này nên vi c s  d ng con tr  trong C# ít quan tr ngề ệ ử ụ ỏ ọ  

h n trong C++. Nh ng con trơ ữ ỏ  cũng có  thể  đượ   sử  d ngc ụ   trong  C#,  khi  đó 

nh ngữ  đo nạ  mã ngu nồ  này sẽ đượ  đánh d uc ấ  là không an toàn (unsafe code)

 C# cũng  từ bỏ ý t ngưở   đa  kế  th aừ   như  trong  C++.  Và  sự  khác  nhau khác  là C#  đ aư  thêm thu cộ   tính  vào  trong  m tộ   l pớ   gi ngố   như  trong  Visual Basic. Và nh ngữ  thành viên c aủ  l p đớ ược g i duy nh t b ng toán t  “.” khácọ ấ ằ ử  

v i C++ có nhi u cách g i trong các tình hu ngớ ề ọ ố  khác nhau

Trang 15

th cự   hi nệ   b ngằ   cách  thông  d ch ho cị ặ   biên  d chị   just­in­time  trong  t ngừ   máy o

ả   tươ   ng.ng ứ

S  khác nhau gi  Java và C#: trongự ữ   ngôn  ngữ  C# nhi uề   hỗ  trợ  đượ  c

đ aư   ra  để  biên  d chị   mã  ngôn  ngữ  trung  gian  sang  mã  máy.  C#  ch aứ   nhi uề  

ki uể  dữ li uệ  cơ b nả  h nơ  Java và cũng cho phép nhi uề  sự mở r ngộ  v iớ  ki uể  

dữ li uệ  giá tr ị

3. Các bước chu n b  cho chẩ ị ương trình 

 Xác đ nh m c tiêu c a chị ụ ủ ươ  trình.ng

 Xác đ nh nh ng phị ữ ương pháp gi i quy t v nả ế ấ  đ ề

 T o m t chạ ộ ương trình đ  gi i quy t v nể ả ế ấ  đ ề

 Th c thi chự ương trình đ  xem k tể ế  qu ả

4. Chương trình C# đ n gi nơ ả

* L p, đ i tớ ố ượng và ki u d  li uể ữ ệ

­ Đi u c t lõi c a l p trình hề ố ủ ậ ướng đ i tố ượng là t o ra các ki u m i.ạ ể ớ  

Ki u là m t thể ộ ứ  được xem như tr uừ  tượng

­   Ki u   để ược   đ nh   nghĩa   nh   m t   d ng   v a   có   thu c   tính   chungị ư ộ ạ ừ ộ  (properties) và các hành vi  ng x  (behavior) c aứ ử ủ  nó

­ Ki u trong ki u trong C# để ể ược đ nhị   nghĩa là  m tộ   l pớ   (class),  và  các thể hi nệ  riêng c aủ  t ngừ  l pớ  đượ  g ic ọ  là đ iố  tượ  (object).ng

­ Khai  báo  l pớ   trong  C#  không  có  d uấ  ;  sau  ngo cặ  }  cu iố   cùng  c aủ  

l p.ớ   Và  khácv i l p trong C/C++ là chia thành 2 ph n header và ph n đ nhớ ớ ầ ầ ị  nghĩa. Trong C# , đ nhị   nghĩa m tộ  l pớ  đượ  gói g nc ọ  trong d uấ  { } sau tên l pớ  

và trong cùng m tộ  t pậ  tin.

* Phương th cứ

­ Phươ  th cng ứ  chính là các hàm đượ  đ nhc ị  nghĩa trong l p.ớ

­ Các  phươ   th cng ứ   này  chỉ  ra r ngằ   các  hành  đ ngộ   mà  l pớ   có  thể  làm 

đượ  cùng v ic ớ  cách th cứ  làm hành đ ngộ  đó

­ Khi  chươ   trình  th cng ự   thi,  CLR  g iọ   hàm  Main()  đ uầ   tiên,  hàm Main()  là  đ uầ   vào  c a chủ ươ   trình,  và  m ing ỗ   chươ   trình  ph ing ả   có  m tộ  hàm Main()

C u trúc hàm main: ấ

static void Main( )

Trang 16

* Chú thích

M t chộ ương trình được vi t t t thì c n ph i có chú thích các đo n mãế ố ầ ả ạ  

được vi t. Cácế  đo nạ  chú thích này sẽ không đượ  biên d chc ị  và cũng không tham  gia  vào  chươ   trình.  M cng ụ   đích chính là làm cho đo n mã ngu n rõạ ồ  ràng và dễ hi u.ể

M t chu i chú thích trên m t dòng thì b t đ u b ng ký t  “//”ộ ỗ ộ ắ ầ ằ ự

Trong đó:

dòng di u khi n:ề ể  là m t h ng xâu ký t  đ t trong hai d u “ ”, nó baoộ ằ ự ặ ấ  

g m các lo i đ i tồ ạ ố ượng sau: Các ký t  thông thự ường, các ký t  đ c bi t vàự ặ ệ  các đ c t  có d ng: {i,­j:dt } có th  đ t b t k    v  trí nào trong xâu v i: i làặ ả ạ ể ặ ấ ỳ ở ị ớ  

th  t  c a m t đ i mà ta c n đ a giá tr  c a chúng ra t i v  trí đ t đ c t (cácứ ự ủ ộ ố ầ ư ị ủ ạ ị ặ ặ ả  

đ i có th  t  b t đ u t  không), j là đ  r ng dành cho đ i c n đ a ra(n u jố ứ ự ắ ầ ừ ộ ộ ố ầ ư ế  

mà l n h n đ  dài c a d  li u c n đ a ra thì giá tr  đóớ ơ ộ ủ ữ ệ ầ ư ị  đ ượ c căn ph i, n u ả ế  

mu n căn trái thì ta thêm d u tr  phía tr ố ấ ừ ướ c, còn n u j mà nh  h n đ  dài ế ỏ ơ ộ  

Trang 17

danh sách các đ i:ố  các đ i có th  là h ng, bi n, bi u th c  và đ tố ể ằ ế ể ứ ặ  cách nhau m t d u ph yộ ấ ẩ

Đ  nh p d  li u vào t  bàn phím chúng ta dùng phể ậ ữ ệ ừ ương th c ReadLineứ  

có trong l p Console nh  sau:ớ ư

Kiểudữliệu Tênbiến;

Tênbiến=Kiểudữliệu.Parse(Console.ReadLine());

Thông thường trong qua trình nh p d  li u chúng ta thậ ữ ệ ương k t h pế ợ  

phương th c Write v i ReadLine trong l p Console. Phứ ớ ớ ương th c này tr  vứ ả ề 

d  li u ki u string.ữ ệ ể

Namespace cung c p cho ta cách t  ch c quan h  gi a các l p và cácấ ổ ứ ệ ữ ớ  

ki u khác nhau. Đây là kĩ thu t cho phép .NET tránh vi c các tên l p, tên bi n,ể ậ ệ ớ ế  tên hàm  đ ng đ  vì trùng tên v i nhau gi a các l p. Đ  khai báo không gianụ ộ ớ ữ ớ ể  tên chúng ta s  d ng t  khóa namespace.ử ụ ừ

Đ i tố ượng  Console b  h n ch  b i namespace b ng vi c s  d ngị ạ ế ở ằ ệ ử ụ  mã 

Trang 18

này là  m tộ   namespace  hay  subnamespace v i mô t  đ y đ  trong c u trúcớ ả ầ ủ ấ  phân c p c aấ ủ  nó.

Trang 19

Ch n Console Application\ Gõ tên project vào m c Name\OKọ ụ

­ Gõ l nh  vào hàm Mainệ

Trang 20

Biên d ch: Nh n F6ị ấ

Ch y chạ ương trình: Nh n F5ấ

Trang 21

- Trình bày được các ki u d  li u c  b n trong C#; ể ữ ệ ơ ả

- Trình bày được các cú pháp: khai báo bi n, khai báo h ng, các câuế ằ  

l nh c  b n trong C#;ệ ơ ả

- S  d ng thành th o các ki u d  li u d ng s n c a C#;ử ụ ạ ể ữ ệ ự ẵ ủ

- Có k  năng t t v  vi c s  d ng bi n, h ng và các bi u th c;ỹ ố ề ệ ử ụ ế ằ ể ứ

Ngôn ngữ C# đ aư  ra các ki uể  dữ li uệ  xây d ngự  s nẵ  r tấ  h uữ  d ng,ụ  phù 

h pợ  v iớ  m tộ  ngôn ng  l p trình hi n đ i, m i ki u d  li u đữ ậ ệ ạ ỗ ể ữ ệ ược ánh x  đ nạ ế  

m t ki u d  li u độ ể ữ ệ ược h  tr  b iỗ ợ ở   h  th ngệ ố   xác  nh nậ   ngôn  ngữ  chung (Common  Language Specification:  CLS)  trong  MS.NET

B ng các ki u d  li u xây d ng s nả ể ữ ệ ự ẵ

Byte

ar

Ký tự UnicodeB

short

6

S  nguyên có d u giá tr  t  ố ấ ị ừ

­32768  đ n 32767.ếus

hort

t16

S  nguyên không d u 0 –ố ấ  65.535

Trang 22

ó ấu

–2.147.483.647 àUi

nt

32

S  nguyên không d u 0 –ố ấ  4.294.967.295

flo

at

gle

Ki u d u ch m đ ng, giá tr  ể ấ ấ ộ ị

x p x  tấ ỉ ừ 3,4E­ 38 đ n 3,4E+38, v i ế ớ

St

ring

Ki u chu iể ỗ(được nói k    ỹ ở

Trang 23

Chuy n đ i các ki u d ể ổ ể ữ  li u

Nh ng đ i tữ ố ượng c a m t ki u d  li u này có th  đủ ộ ể ữ ệ ể ược chuy n sang ể

nh ng đ i tữ ố ượ   c a m tng ủ ộ  ki uể  dữ li uệ  khác thông qua cơ chế chuy nể  đ iổ  

Cú pháp chuy n đ i d  li u:ể ổ ữ ệ

Bi n=(ki u) giá tr [bi n];ế ể ị ế

Trang 24

Ta cũng có th  gán giá tr  cho bi n khi khai báoể ị ế

Ví d : ụ

int a=9;

Đ nh  danh

Đ nh danh là tên mà ngị ườ ậi l p trình ch  đ nh cho các ki u d  li u, cácỉ ị ể ữ ệ  

phương th c,ứ   bi n,ế  h ng, hay đ i tằ ố ượng  M t đ nh danh ph i b t đ u v iộ ị ả ắ ầ ớ  

m t ký t  ch  cái hay d u g chộ ự ữ ấ ạ   dưới, các ký t  còn l i ph i là ký t  ch  cái,ự ạ ả ự ữ  

Trang 25

H ngằ  cũng là m tộ  bi nế  nh ngư  giá trị c aủ  h ngằ  không thay đ i.ổ

2.3. Ki u li t kêể ệ

­ Ki u li t kê đ n gi n là t p h p các tên h ng có giá tr  không thay ể ệ ơ ả ậ ợ ằ ị

Trang 26

đ i (thổ ường được g iọ  là danh sách li tệ  kê).

­ Cú pháp khai báo ki u li t kêể ệ

enum <tên li t kê> [:ki u c  s ]ệ ể ơ ở

{danh sách các thành ph n li t kê};ầ ệ

Trang 27

Biên d ch: Nh n F6ị ấ

Ch y chạ ương trình: Nh n F5ấ

3. 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à toán t  gán (‘=’) không ph i là toán t  soư ử ả ử  sánh

Do var1 = 24 là m t bi uộ ể  th cứ  đượ  đ nhc ị  giá trị là 24 nên bi uể  th cứ  này 

có thể đượ  xem nh  ph n bên ph i c a m t bi u th c gánc ư ầ ả ủ ộ ể ứ  khác:

var2 = var1 = 24;

L nhệ   này  sẽ  đượ   th cc ự   hi nệ   từ  bên  ph iả   sang  khi  đó  bi n  ế var1  sẽ 

nh nậ  đượ  giá trị là 24 và ti pc ế  sau đó thì var2 cũng đượ  nh nc ậ  giá trị là 24

Trang 28

4. Kho ng tr ngả ắ

Trong  ngôn  ngữ  C#,  nh ngữ   kho ngả   tr ng,ắ   kho ngả   tab  và  các  dòng 

đượ   xem  như  là kho ng tr ng (whitespace).c ả ắ

C# sẽ bỏ qua t tấ  cả các kho ngả  tr ngắ  đó, do v yậ  chúng ta có thể vi tế  

Trình bày được cú pháp các l nh phân nhánh, các l nh l p trong C#ệ ệ ặ

S  d ng đử ụ ược các câu l nh đ  gi i quy t các bài t p theo yêu c u.ệ ể ả ế ậ ầTrong C# m t ch  d n l p trình đ y đ  độ ỉ ẫ ậ ầ ủ ược g i là câu l nh.ọ ệ

M i câu l nh ph i k t thúc v i m t d u ch m ph y, ví dỗ ệ ả ế ớ ộ ấ ấ ẩ ụ nh :ư

int x; // m t câuộ  l nhệ

x = 32; // câu l nhệ  khácint y =x; // đây cũng là m t câuộ  l nhệPhân lo i câu l nhạ ệ

+ L nh đ n ệ ơ

Trang 29

v aừ  t oạ   th cự  hi nệ   xong và  trả  về m tộ  giá trị thì trình biên d chị   sẽ ti pế   t cụ  

th cự  hi nệ  dòng l nhệ  ti pế  sau c aủ  hàm ban đ u.ầ

Ho t đ ng: trình biên d ch ki m tra bi u th c đi u ki n, câu l nh chạ ộ ị ể ể ứ ề ệ ệ ỉ 

được th c hi n khi bi u  th c đi u ki n đúngự ệ ể ứ ề ệ

Trang 30

<Câu l nh 2 >]ệ

Trang 32

Các l nhệ  đi uề  ki nệ  if có thể l ngồ  nhau để ph cụ  vụ cho vi cệ  xử lý các câu đi uề  ki nệ  ph c t p.ứ ạ

Ví d :ụ

Căn c  vào đi m trung bình đ  x p lo i h c l c:ứ ể ể ế ạ ọ ự

  N u dtb<5 thì x p lo i Y uế ế ạ ế

 N u 5 =<dtb <7 thì x p lo i Trung bìnhế ế ạ

 N u 7=<dtb<8 thì x p lo i Kháế ế ạ

 N u 8=< dtb<9 thì x p lo i Gi iế ế ạ ỏ

N u dtb>=9 thì x p lo i Xu t s cế ế ạ ấ ắ

Trang 33

Biên d ch: Nh n F6ị ấ

Ch y chạ ương trình: Nh n F5ấ

5.2.4.Câu l nh ệ  switch

Khi có quá nhi u đi u ki n đ  ch n th c hi n thì dùng câu l nh ề ề ệ ể ọ ự ệ ệ if sẽ 

r t r i r m vàấ ố ắ  dài dòng, C# cung c p câu l nh nh y switchấ ệ ả

­ Cú pháp:

switch (bi u th c)ể ứ{

case <giá tr 1>:<Câu l nh 1>[<break;>]ị ệcase <giá tr 2>:<Câu l nh 2>[<break;>]ị ệ

…case <giá tr n>:<Câu l nh n>[<break;>]ị ệ [default:<câu l nh n+1>]ệ

Trang 34

Ho t đ ng: trình biên d ch s  tính giá tr  c a bi n th c, N u giá tr  c aạ ộ ị ẽ ị ủ ể ứ ế ị ủ  

bi u th c b ng giá tr  tể ứ ằ ị ương  ng c a case nào thì câu l nh thu c case đó sứ ủ ệ ộ ẽ 

được th c thi. Sau khi th c thi xong l nh n u g p l nh break thì s  thoát kh iự ự ệ ế ặ ệ ẽ ỏ  

l nh switch ngệ ượ ạc l i thì các l nh còn l i s  đệ ạ ẽ ược th c thi. N u giá tr  bi uự ế ị ể  

th c không b ng giá tr  c a case nào thì khi đó câu l nh n+1 s  đứ ằ ị ủ ệ ẽ ược th c thi.ự

­ Ví d : X p th  trong 1 tu nụ ế ứ ầ

Thu=2 thì k t qu  là “Thu hai”ế ả

Thu =3 k t qu  là “Thu ba” …ế ả

N u thu là m t giá tr  khác th  trong tu n thì k t qu  là “thu khong tonế ộ ị ứ ầ ế ả  tai”

Trang 35

Biên d ch: Nh n F6ị ấ

Ch y chạ ương trình: Nh n F5ấ

5.3. Vòng l p ặ  while

Ý nghĩa c a vòng l p ủ ặ while là: “Trong khi đi u ki n đúng thì th c  ề ệ ự

hi n các công vi c ệ ệ  này”. Cú pháp s  d ng vòng l p ử ụ ặ while như sau:

while (Bi uể  

th c)ứ

<Câu l nh th cệ ự  hi n>ệ

Bi u th c c a vòng l p  ể ứ ủ ặ while  là đi u ki n đ  các l nh đ c th cề ệ ể ệ ượ ự  

hi n, bi u th c này b tệ ể ứ ắ  bu c ph i tr  v  m t giá tr  ki u ộ ả ả ề ộ ị ể bool là true/false. 

Trang 36

N u có nhi u câu l nh c n đế ề ệ ầ ược th c hi nự ệ  trong vòng l pặ  while thì ph iả  đ tặ  các l nhệ  này trong kh iố  l nh.ệ

Trang 37

­ Cú pháp

do 

<Câu l nh>ệwhile (đi u kiên)ề

Ho t đ ng: máy s  th c hi n câu l nh sau đó ki m tra đi u ki n. N uạ ộ ẽ ự ệ ệ ể ề ệ ế  

đi u ki n đúng thì ti p t c th c hi n câu l nh, l p đ n khi đi u ki n sai.ề ệ ế ụ ự ệ ệ ặ ế ề ệ

Ví d : hi n th  10 s  t  nhiên đ u tiênụ ể ị ố ự ầ

Trang 39

for ([ ph n kh i t o] ; [bi u th c đi u ki n]; [b cầ ở ạ ể ứ ề ệ ướ  l p])ặ

Trang 40

foreach (<ki u t p h p> <tên truy c p thành ph n > in < ể ậ ợ ậ ầtên t pậ  h p>)ợ

Ngày đăng: 28/05/2021, 11:21

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w