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

Giáo trình mô đun Lập trình windows forms (Nghề Công nghệ thông tin - Trình độ cao đẳng) – CĐ Kỹ thuật Công nghệ BR–VT

232 36 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 232
Dung lượng 5,25 MB

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

Nội dung

Giáo trình mô đun Lập trình windows forms cung cấp cho sinh viên những kiến thức và kỹ năng về: 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; 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;...

Trang 1

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) ậ ệ

Trang 2

BÀ R A­VŨNG TÀU, NĂM 2020.

Trang 3

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  đồ ể ượ  cphé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 4

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ườ  ngCao đ 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ứ ộ ớ ố  

Trang 5

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ể ị ơ ở ữ ệ ằ

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 quý th y/cô và các em sinh viênế ủ ầ  

đ  ti p t c hoà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 quá 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ầ ị ươ  – Ch  biênng ủ

Trang 7

M C L CỤ Ụ

Trang 8

GIÁO TRÌNH MÔ ĐUNTê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ơ ở ữ ệ ậ ả ả ị ơ ở ữ ệ

+ 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, )ứ ụ

Trang 9

+ 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 ự ế

+ 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:

Trang 10

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.ệ ố ợ ừ ơ

Trang 11

­ Qu n lý th  vi nả ư ệ

1.2. Kh i đ ng, thoát chở ộ ương trình

Để   t i   Visual   Studio   2019,   th c   hi n   vàoả ự ệ  link: https://visualstudio.microsoft.com/download

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ấ ọ ể ế ặ

Trang 14

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:

Trang 15

­ 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). ặ ể ả ở ự ộ ở ạ

­ 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 ự ọ ơ ư

Trang 16

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: ỗ

https://msdn.microsoft.com/query/dev15.query?appId=Dev15IDEF1&l=en­ S&k=k(MSDNSTART)&rd=true

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

Trang 17

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  default  foreach  object  sizeof  unsafe

as  delegate  goto  operator  stackalloc  ushort

bool  double  implicit  override  string  virtual

break  else  in  params  struct  volatile

byte  enum  int  private  switch  void

case  event  interface  protected  this  while

catch  explicit  internal  public  throw  decimal

class  finally  long  return  typeof  short

const  fixed  namespace  sbyte  uint  unchecked

Trang 18

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,

byte  1  Byte  S  nguyên dố ương không d u: 0 đ n 255ấ ế

char  2  Char  Ký t  Unicodeự

bool  1  Boolean  Giá tr  logic true/ falseị

sbyte  1  Sbyte  S  nguyên có d u: ­128 đ n 127ố ấ ế

short  2  Int16  S  nguyên có d u: ­32.768 đ n 32.767ố ấ ế

ushort  2  Uint16  S  nguyên không d u: 0 đ n 65.535ố ấ ế

int  4  Int32  S   nguyên   có   d u:   ­2.147.483.647   đ nố ấ ế  

2.147.483.647uint  4  Uint32  S   nguyên   không   d u:   0   đ nố ấ ế  

4.294.967.295

float  4  Single 

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

double  8  Double 

Ki u d u ch m đ ng, giá tr  x p x  tể ấ ấ ộ ị ấ ỉ ừ 1,7E­308 đ n 1,7E+308; v i 15, 16 chế ớ ữ 

s  có nghĩaốdecimal  8  Decimal  Có đ  chính xác đ n 28 con s  và giá trộ ế ố ị 

th p phân, đậ ược dùng trong tính toán tài 

Trang 19

chính, ki u này đòi h i ph i có h u tể ỏ ả ậ ố 

“m” hay “M” theo sau giá trị

long  8  Int64 

Ki u s  nguyên có d u có giá tr  trongể ố ấ ịkho ng: ­9.233.370.036.854.775.808 đ nả ế  – 9.233.372.036.854.775.807

ulong  8  Uint64  S   nguyên   không   d u   t   0   đ nố ấ ừ ế  

0xffffffffffffff

L u  ư ý:

Ki u s  th c: Trình biên d ch luôn 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.ả ự

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:ể ổ ể ữ ệ ể ự ệ ằ

Trang 20

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ể ỗ ề ể

­ 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 

Trang 21

2.3. Bi n, h ng, bi u th cế ằ ể ứ

<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: ở ạ ị ế

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

 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

Trang 22

static:  

4myclass:  

Student&Falculty: 

Không h p l , trùng t  khóaợ ệ ừKhông h p l , không th  b t đ u b ng ký t  sợ ệ ể ắ ầ ằ ự ố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ổ ị ể ừ ệ ị ả ử ụ ế  

<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.ổ

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 nguyên.ể

2.4. Các phép toán

2.4.1. Toán t  ử (Operator) trong C#

Trang 23

Các phép toá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 toán t  trong C# ả ả ả ử

Toán tử Tên Ví dụ K t quế ả

+ C ngộ x+y T ng 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. Toán t  gán

M t s  toán t  gán độ ố ử ượ ử ục s  d ng trong C#:

B ng 2.4: B ng mô t  các toán t  phép gán trong C# ả ả ả ử

Toán tử Ví dụ K t quế ả

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

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

Trang 24

Toán tử Ví dụ K t quế ả

*= 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 trbit) ị ạ ừ 

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

Ví d :

K t qu  khi ch y chế ả ạ ương trình trên

2.4.3. Toá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:

Trang 25

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.ư ề ằ

2.4.4. Toá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 toán t  logic nhỗ ợ ử ư sau:

B ng 2.5: B ng mô t  các toán t  logic trong C# ả ả ả ử

Toán tử Ký hi u ệ Cú pháp Miêu tả

AND && <BT1> && <BT2> Tr  v  true n u c  2 đ u đúngả ề ế ả ề

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 ctrong ngo cả ề ặủ ị ủ ể ứ  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 toá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 toán t  quan h  trong C# ả ả ả ử ệ

Toán tử Ký hi u Bi u th c so sánhể ứ K t qu  so sánhế ả

Trang 26

Toán tử Ký hi u Bi u th c so sánhể ứ K t qu  so sánhế ả

L n h n hay b ngớ ơ ằ >= x>=y true

Nh  h n hay b ngỏ ơ ằ <= x<=y false

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

Do v y khi s  d ng toá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 toán t  c a ngôn ng  C# nh  phép so sánh hay phép gán s  đả ử ủ ữ ư ẽ ượ  ctrì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:ư ầ ả ủ ộ ể ứ

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ư ả ắ ố ư ọ ỉ ấ ệ ữ  

Trang 27

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!”);

m i kho ng tr ng   gi a hai ch  “Xin” và “chao” đ u đỗ ả ắ ở ữ ữ ề ược đ i x  bìnhố ử  

thường nh  các ký t  khác trong chu i.ư ự ỗ

H u h t vi c s  d ng kho ng tr ng nh  m t s  tùy ý c a ngầ ế ệ ử ụ ả ắ ư ộ ự ủ ườ ậi l p trình. 

Đi u c t y u là vi c s  d ng kho ng tr ng s  làm cho chề ố ế ệ ử ụ ả ắ ẽ ương trình d  nhìnễ  

d  đ c h n Cũng nh  khi ta vi t m t văn b n trong MS Word n u không trìnhễ ọ ơ ư ế ộ ả ế  bày t t thì s  khó đ c và gây m t c m tình cho ngố ẽ ọ ấ ả ười xem. Còn đ i v i trìnhố ớ  biên d ch thì vi c dùng hay không dùng kho ng tr ng là không khác nhau.ị ệ ả ắ

Tuy nhiên, cũng c n l u ý khi s  d ng kho ng tr ng nh  sau:ầ ư ử ụ ả ắ ư

int x = 24; t ương t  nh :  ự ư int x=24; nh ng không gi ng nh :ư ố ư  intx=24;

Trình biên d ch nh n bi t đị ậ ế ược các kho ng tr ng   hai bên c a phép gán làả ắ ở ủ  

ph  và có th  b  qua, nh ng kho ng tr ng gi a khai báo ki u và tên bi n thìụ ể ỏ ư ả ắ ữ ể ế  không ph i ph  hay thêm mà b t bu c ph i có t i thi u m t kho ng tr ng.ả ụ ắ ộ ả ố ể ộ ả ắ  

Đi u này không có gì b t h p lý, vì kho ng tr ng cho phép trình biên d chề ấ ợ ả ắ ị  

nh n bi t đậ ế ượ ừc t  khoá int và không th  nào nh n để ậ ược intx.Tương t  nhự ư C/C++, trong C# câu l nh đệ ược k t thúc v i d u ch m ph y ‘;’. Do v y cóế ớ ấ ấ ẩ ậ  

th  m t câu l nh trên nhi u dòng, và m t dòng có th  nhi u câu l nh nh ngể ộ ệ ề ộ ể ề ệ ư  

nh t thi t là hai câu l nh ph i cách nhau m t d u ch m ph y.ấ ế ệ ả ộ ấ ấ ẩ

2.4.6. Câu l nh (statement)

Trong C# m t ch  d n l p trình đ y đ  độ ỉ ẫ ậ ầ ủ ược g i là câu l nh. Chọ ệ ương trình bao g m nhi u câu l nh tu n t  v i nhau. 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 :ộ ấ ấ ẩ ụ ư

Trang 28

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

x = 32; // câu lệnh khác

int y =x; // đây cũng là một câu lệnh

Nh ng câu l nh này s  đữ ệ ẽ ược x  lý theo th  t  Đ u tiên trình biên d ch b tử ứ ự ầ ị ắ  

đ u   v  trí đ u c a danh sách các câu l nh và l n lầ ở ị ầ ủ ệ ầ ượt đi t ng câu l nh choừ ệ  

đ n l nh cu i cùng, tuy nhiên ch  đúng cho trế ệ ố ỉ ường h p các câu l nh tu n tợ ệ ầ ự không phân nhánh

Có hai lo i câu l nh phân nhánh trong C# là : phân nhánh không có đi u ki nạ ệ ề ệ  (unconditional branching statement) và phân nhánh có đi u ki n (conditionalề ệ  branching statement)

Ngoài ra còn có các câu l nh làm cho m t s  đo n chệ ộ ố ạ ương trình được th cự  

hi n nhi u l n, các câu l nh này đệ ề ầ ệ ược g i là câu l nh l p hay vòng l p. Baoọ ệ ặ ặ  

g m các l nh l p for, while, do, in, và each s  đồ ệ ặ ẽ ược đ  c p t i trong m c ti pề ậ ớ ụ ế  theo

Câu h i ôn t p và bài t pỏ ậ ậ

1. T o m t project dạ ộ ướ ại d ng Console th c hi n khai báo các lo i bi n sau:ự ệ ạ ế

Bi n chieudai, chieurong, chuvi, dientich ki u d  li u intế ể ữ ệ

Bi n so1, so2, so3, min, max ki u s  th c (float)ế ể ố ự

2. T o m t project dạ ộ ướ ại d ng Console th c hi n khai báo các lo i h ng sau:ự ệ ạ ằ

H ng s  th c p = 3.14ằ ố ự

H ng s  nguyên n = 100 ph n t  m ngằ ố ầ ử ả

Trang 29

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Ề Ể

Mã bài: 19.03

Gi i thi u:ớ ệ

Trong bài này, n i dung bài h c s  giúp phân tích đ  hi u v  cú phápộ ọ ẽ ể ể ề  

c a m t chủ ộ ương trình C# nhé. N i dung bài h c s  hộ ọ ẽ ướng d n s  d ng l nhẫ ử ụ ệ  

xu t ra màn hìnhấ  Console.WriteLine(); và l nh nh p d  li u vào t  bàn phímệ ậ ữ ệ ừ  

l nh Console.Read(). Đ ng th i tìm hi u v  c u trúc l nh có đi u ki n if…ệ ồ ờ ể ề ấ ệ ề ệelse

M c tiêu:

­ Trình bày và bi t s  d ng câu l nh nh p xu t c  b n.ế ử ụ ệ ậ ấ ơ ả

­ Trình bày và bi t s  d ng c u trúc l nh r  nhánh if else.ế ử ụ ấ ệ ẽ

­ V n d ng các câu l nh nh p xu t đ  vi t chậ ụ ệ ậ ấ ể ế ương trình Console c  b n.ơ ả

­ V n d ng c u trúc r  nhánh if else đ  vi t chậ ụ ấ ẽ ể ế ương trình Console c  b n.ơ ả

­ Rèn luy n tính c n th n, t  giác, sáng t o, làm vi c nhóm.ệ ẩ ậ ự ạ ệ

Ý nghĩa: In giá tr  ra màn hình console. Giá tr  này có th  là 1 ký t , 1 chu i,ị ị ể ự ỗ  

m t giá tr  có th  chuy n v  ki u chu i.ộ ị ể ể ề ể ỗ

Ta s  dùng m t l nh nào đó là cho chẽ ộ ệ ương trình ph i d ng l i đ i mình nh nả ừ ạ ợ ấ  

m t phím b t k  m i k t thúc nh  v y trộ ấ ỳ ớ ế ư ậ ước khi chúng ta nh n m t phím b tấ ộ ấ  

k  thì chúng ta có th  quan sát đỳ ể ược k t qu  trên màn hình console. Các l nhế ả ệ  

có th  s  d ngể ử ụ

Console.Read();

Console.ReadLine();

Console.ReadKey();

Trang 30

Cú pháp:

Console.WriteLine(<giá trị cần in ra màn hình>);

Ý nghĩa:

L nh này cũng tệ ượng t  nhự ư Console.Write()

Nh ng s  khácư ẽ  khi in giá tr  ra màn hình xong nó s  t  đ ng đ a con trị ẽ ự ộ ư ỏ 

xu ng dòng. Đi u này giúp ta có th  gi i quy t đố ề ể ả ế ược v n đ  đã đ t ra   ph nấ ề ặ ở ầ  trên

Ngoài ra, đ  xu ng dòng ta còn có nhi u cách khác nh :ể ố ề ư

S  d ng ký t  đ c bi t: chúng ta s  d ng ký tử ụ ự ặ ệ ử ụ ự “\n” trong chu i in ra mànỗ  hình thì trình biên d ch s  t  đ ng đ i nó thành ký t  xu ng dòng.ị ẽ ự ộ ổ ự ố

Nh   v y   thay   vì   dùngư ậ  Console.WriteLine(“K   team”)  ta   có   thể dùng Console.Write (“K team \n”)

Kì, là b  kí t  và b  mã kí t  d a trên b ng ch  cái La Tinh độ ự ộ ự ự ả ữ ược dùng trong 

ti ng Anh hi n đ i và các ngôn ng  Tây Âu khác) c a ký t  đó.ế ệ ạ ữ ủ ự

Chú   ý: l nh   này   không   đ c   đ c   các   phím   ch c   năngệ ọ ượ ứ  như Ctrl, Shift, Alt, Caps Lock, Tab, . . 

3.1.4. Console.ReadLine();

Cú pháp:

Console.ReadLine();

Trang 31

Ý nghĩa: Đ c d  li u t  bàn phím cho đ n khi g p ký t  xu ng dòng thì d ngọ ữ ệ ừ ế ặ ự ố ừ  (Nói cách khác là đ c cho đ n khi mình nh n enter thì d ng) và giá tr  đ cọ ế ấ ừ ị ọ  

được luôn là m t chu i.ộ ỗ

ki uể  ConsoleKeyInfo (là m t ki u d  li u có c u trúc độ ể ữ ệ ấ ược đ nh nghĩaị  

s n đ  ch a nh ng ký t  c a bàn phím bao g m các phím ch c năng).ẵ ể ứ ữ ự ủ ồ ứTham   s   ki u   boolố ể  bao   g m   2   giá   tr :ồ ị  true ho cặ  false   N u   truy nế ề  vào true thì phím đượ ấc  n s  không hi n th  lên màn hình console màẽ ể ị  

được đ c ng m ngọ ầ ượ ạc l i thì phím đượ ấc  n s  hi n th  lên màn hìnhẽ ể ị  console. N u không truy n tham s  vào thì m c đ nh s  làế ề ố ặ ị ẽ  false

Ví d : ụ

Vi t chế ương trình nh p vào thông tin sinh viên bao g m: H  tên, gi i tính,ậ ồ ọ ớ  ngày sinh, đ a ch , tu i.ị ỉ ổ

Đ  ể

Bước 1: M  Visual Studio ở  Ch n File ọ  Ch n Project…ọ

Hình 3.1: Màn hình t o m i m t Project ạ ớ ộ

Ch n Visual C#  ọ   ch n Console App (.NET Framework)  ọ   Nh p Name,ậ  

ch n Location ọ  Ch n OKọ

Trang 32

Hình 3.2: Màn hình đ t tên và ch n n i l u c a Project ặ ọ ơ ư ủ

Sau khi t o xong Project c u trúc th  m c đạ ấ ư ụ ượ ưc l u vào trong Solution

Hình 3.3: Màn hình qu n lý Solution ả

M t Solution g m nhi u Project có c u trúc nh  sau:ộ ồ ề ấ ư

Trang 33

Hình 3.4: Màn hình qu n lý Project ả

Hình 3.5: Màn hình gán cho Project đ ượ c ch y đ u tiên ạ ầ

Project sau khi t oạ

Trang 34

Hình 3.6: Màn hình ban đ u c a c a s  làm vi c Program.cs ầ ủ ử ổ ệ

B ướ c 2: Vi t x  lý choế ử  Program.cs

Hình 3.7: Code đ  nh p xu t thông tin sinh viên ể ậ ấ

B ướ c 3: Ch y chạ ương trình

Trước khi ch y chạ ương trình c n biên d ch và ki m tra l i c a Solution v aầ ị ể ỗ ủ ừ  

t o. ạ

Khi ki m tra còn l i thì chể ỗ ương trình s  ch y v i l n biên d ch trẽ ạ ớ ầ ị ước đó

Trang 35

Hình 3.8: Ki m tra l i c a Solution ể ỗ ủ

Hình 3.9: Màn hình thông báo l i c a ch ỗ ủ ươ ng trình

Ch n Start ho c nh p vào bi u tọ ặ ấ ể ượng     đ  ch y chể ạ ương trình. Phím t t (F5).ắ

Hình 3.10: Ch n bi u t ọ ể ượ ng đ  th c thi (ch y) ch ể ự ạ ươ ng trình

Trang 36

Giao di n chệ ương trình khi ch y sau khi nh p thông tin sinh viênạ ậ

Hình 3.11: Màn hình hi n th  k t qu  ch ể ị ế ả ươ ng trình

3.2. Câu l nh if else

Câu l nh phân nhánh ệ if else d a trên m t đi u ki n. Đi u ki n là m tự ộ ề ệ ề ệ ộ  

bi u th c s  để ứ ẽ ược ki m tra giá tr  ngay khi b t đ u g p câu l nh đó. N uể ị ắ ầ ặ ệ ế  

đi u ki n đề ệ ược ki m tra là đúng, thì câu l nh hay m t kh i các câu l nh bênể ệ ộ ố ệ  trong thân c a câu l nh if đủ ệ ược th c hi n.ự ệ

Trong câu đi u ki n ề ệ if else thì else là ph n tùy ch n. Các câu l nh bênầ ọ ệ  trong thân c a ủ else ch  đ c th c hi n khi đi u ki n c aỉ ượ ự ệ ề ệ ủ  if là sai. Do v y khiậ  câu l nh đ y đệ ầ ủ if else đ c dùng thì ch  có m t trong hai if ho c else đ cượ ỉ ộ ặ ượ  

th c hi n. Ta có cú pháp câu đi u ki n ự ệ ề ệ if  else sau:

if (biểu thức điều kiện)

<Khối lệnh thực hiện khi điều kiện đúng>

[else

<Khối lệnh thực hiện khi điều kiện sai>]

N u các câu l nh trong thân c a if hay else mà l n h n m t l nh thì cácế ệ ủ ớ ơ ộ ệ  

l nh này ph i đệ ả ược bao trong m t kh i l nh, t c là ph i n m trong d uộ ố ệ ứ ả ằ ấ  

kh i { }:ố

if (biểu thức điều kiện)

{

<Lệnh 1> <Lệnh 2> } [else

{

<lệnh 1> <lệnh 2> }]

Trang 37

Nh  trình bày bên trên do else là ph n tùy ch n nên đư ầ ọ ược đ t trong d uặ ấ  ngo c vuông Ví d : câu l nh đi u ki n if else.ặ ụ ệ ề ệ

K t qu  chế ả ương trình:

Hình 3.12. Màn hình k t qu  câu l nh if…else ế ả ệ

Trong ví d  trên, câu l nh ụ ệ if đ u tiên s  ki m tra xem giá tr  c a var1 có l nầ ẽ ể ị ủ ớ  

h n giá tr  c a var2 không. Bi u th c đi u ki n này s  d ng toán t  quan hơ ị ủ ể ứ ề ệ ử ụ ử ệ 

l n h n (>), các toán t  khác nh  nh  h n (<), hay b ng (==). Các toán t  nàyớ ơ ử ư ỏ ơ ằ ử  

thường xuyên đượ ử ục s  d ng trong l p trình và k t qu  tr  là giá tr  đúng hayậ ế ả ả ị  sai

Vi c ki m tra xác đ nh giá tr  var1 l n h n var2 là sai (vì var1 = 10 trong khiệ ể ị ị ớ ơ  var2 = 20), khi đó các l nh trong ệ else s  đ c th c hi n, và các l nh này in raẽ ượ ự ệ ệ  màn hình:

Trang 38

Nh  trình bày bên trên do else là ph n tùy ch n nên đư ầ ọ ược đ t trong d u ngo cặ ấ ặ  vuông. Ví d : câu l nh đi u ki n if else.ụ ệ ề ệ

K t qu  chế ả ương trình:

Hình 3.13. Màn hình k t qu  nhi u câu l nh if…else ế ả ề ệ

Trong ví d  trên, câu l nh ụ ệ if đ u tiên s  ki m tra xem giá tr  c a var1 có l nầ ẽ ể ị ủ ớ  

h n giá tr  c a var2 không. Bi u th c đi u ki n này s  d ng toán t  quan hơ ị ủ ể ứ ề ệ ử ụ ử ệ 

l n h n (>), các toán t  khác nh  nh  h n (<), hay b ng (==). Các toán t  nàyớ ơ ử ư ỏ ơ ằ ử  

thường xuyên đượ ử ục s  d ng trong l p trình và k t qu  tr  là giá tr  đúng hayậ ế ả ả ị  sai

Trang 39

Vi c ki m tra xác đ nh giá tr  var1 l n h n var2 là sai (vì var1 = 10 trong khiệ ể ị ị ớ ơ  var2 = 20), khi đó các l nh trong ệ else s  đ c th c hi n, và các l nh này in raẽ ượ ự ệ ệ  màn hình:

var2: 20 > var1: 10

Ti p theo đ n câu l nh if th  hai, sau khi th c hi n l nh gán giá tr  c a var1 =ế ế ệ ứ ự ệ ệ ị ủ  

30, lúc này đi u ki n if đúng nên các câu l nh trong kh i if s  đề ệ ệ ố ẽ ược th c hi nự ệ  

và k t qu  là in ra ba dòng sau:ế ả

Gan gia tri var1 cho var2

Tang bien var1 len mot

Var1 = 31, var2 = 30

* Câu l nh if l ng nhauệ ồ

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. Vi c này cũng thề ệ ứ ạ ệ ường xuyên g p khi l p trình. Gi  sặ ậ ả ử chúng ta c n vi t m t chầ ế ộ ương trình có yêu c u xác đ nh tình tr ng k t hônầ ị ạ ế  

c a m t công dân d a vào các thông tin nh  tu i, gi i tính, và tình tr ngủ ộ ự ư ổ ớ ạ  hôn nhân, d a trên m t s  thông tin nh  sau:ự ộ ố ư

• N u công dân là nam thì đ  tu i có th  k t hôn là 20 v i đi u ế ộ ổ ể ế ớ ề

Trang 40

D a trên các yêu c u trên ta có th  dùng các l nh if l ng nhau đ  th c hi n.ự ầ ể ệ ồ ể ự ệ  

Ví d  sau s  minh h a cho vi c th c hi n các yêu c u trên.ụ ẽ ọ ệ ự ệ ầ

K t qu  chế ả ương trình:

Hình 3.14. Màn hình k t qu  if…else l ng ế ả ồ

Câu h i ôn t p và bài t pỏ ậ ậ

1. Vi t chế ương trình cho phép người dùng nh p tên c a mình và hi n th  câu:ậ ủ ể ị  Môn h c L p trình Windows Form chào b n +  <Tên v a nh p>.ọ ậ ạ ừ ậ

2. Vi t chế ương trình nh p vào các thông tin:ậ

Tên

Tu iổ

Đ a chị ỉ

Ngày đăng: 17/09/2021, 11:10

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w