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

Bài giảng Lập trình trên môi trường Window: Chương 2 - ThS. Dương Thành Phết

45 30 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 45
Dung lượng 876,91 KB

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

Nội dung

Bài giảng Lập trình trên môi trường Window - Chương 2: Ngôn ngữ lập trình C cung cấp cho người học các kiến thức: Tổng quan về ngôn ngữ lập trình C, các cấu trúc điều khiển, phương thức, mảng, chuỗi. Mời các bạn cùng tham khảo nội dung chi tiết.

Trang 1

Chương 2 NGÔN NGỮ LẬP TRÌNH C#

Giảng Viên: ThS Dương Thành Phết

Email: phetcm@gmail.com – YahooID: phetcm

LẬP TRÌNH TRÊN MÔI TRƯỜNG WINDOWS

Trang 3

1 TỔNG QUAN NGÔN NGỮ LẬP TRÌNH C#

 Là ngôn ngữ lập trình được xây dựng trên nền tảng ngôn ngữ C/C++/Java nhưng hoạt động trên Net Framework

 Đặc điểm :

 Hoạt động trên NET Framework

 Dựa trên phương pháp thiết kế hướng đối tượng

 Dùng cho cả 3 loại ứng dụng: Console, Winform, Webform

1.1 Giới thiệu ngôn ngữ lập trình C#

Trang 4

1.2 Từ khoá – Keywords

abstract add* as base bool break byte case catch char checked class const continue decimal default delegate do double else enum event explicit extern false finally fixed float for foreach get* goto if implicit in int interface internal is lock long namespace new null object operator out override params partial* private protected public readonly ref remove return sbyte sealed set* short sizeof stackalloc static string struct switch this throw true

Là từ dành riêng sử dụng để giúp trình biên dịch xác định cấu trúc và tổ chức của mã nguồn

1 TỔNG QUAN NGÔN NGỮ LẬP TRÌNH C#

Trang 6

1.4 Định danh (Identifier)

 Định danh là việc xác định tên cho các thành phần trong mã nguồn như : tên biến, hàm, hằng, function…

 Quy ước định danh trong C# :

 Phân biệt chữ hoa thường

 Quy ước đặt tên :

• Sử dụng 26 chữ cái (thường & hoa), 10 chữ số

• Dấu nối ( _ )

• Không dùng chữ số ở đầu

1 TỔNG QUAN NGÔN NGỮ LẬP TRÌNH C#

Trang 7

1.5 Biến & khai báo biến

 Biến là đối tượng lưu trữ các giá trị, dữ liệu trong một

chương trình

 Khai báo : <kiểu dữ liệu> <tên_biến>;

Ví dụ : int x;

float a,b;

1 TỔNG QUAN NGÔN NGỮ LẬP TRÌNH C#

Trang 8

1.6 Kiểu dữ liệu (Data Types)

 Kiểu dữ liệu là các loại dữ liệu và phạm vi giá trị của

chúng trong bộ nhớ sử dụng để lưu trữ

 Có 2 loại : kiểu dữ liệu dựng sẵn & kiểu dữ liệu tự

định nghĩa Một số kiểu dựng sẵn : int (int16, int32, int64), float, bool, string, char, double, long, decimal, short…

1 TỔNG QUAN NGÔN NGỮ LẬP TRÌNH C#

Trang 9

Kiểu số nguyên(Integer)

Kiểu

C#

Kích thước (byte)

Kiểu .NET

Miền giá trị Mô tả

sbyte 1 Sbyte [-128 127] Nguyên có dấu

bool 1 Boolean true hoặc false Giá trị logic

short 2 Int16 [0 65.535] Nguyên không dấu int 4 Int32 Từ -2.147.483.647

đến 2.147.483.646

Nguyên có dấu

uint 4 Uint32 Từ 0 đến 4.294.967.295 Nguyên không dấu

1 TỔNG QUAN NGÔN NGỮ LẬP TRÌNH C#

Trang 10

 Kiểu dấu chấm động

Kiểu C#

Kích thước (byte)

Kiểu .NET

Miền giá trị Mô tả

float 4 Singgle Từ 3,4E-38

đến 3,4E+38

Kiểu dấu chấm động, với

7 chữ số có nghĩa double 8 Double Từ 1,7E308

đến 1,7E+308

Kiểu dấu chấm động có

độ chính xác gấp đôi, với 15 chữ số có nghĩa decimal 8 Decimal Có độ chính xác đến 28

con số, phải có hậu tố

“m” hoặc “M” theo sau gi

Trang 11

 Kiểu chuỗi (String)

 C# định nghĩa kiểu string như một kiểu dữ liệu cơ bản (khác với C, C++)

 Kiểu string có thể chứa nội dung không giới hạn, vì đây là kiểu dữ liệu đối tượng được chứa ở bộ nhớ heap

 Khai báo : string s = “Nguyen van a”;

1 TỔNG QUAN NGÔN NGỮ LẬP TRÌNH C#

Trang 12

<Kiểu dữ liệu> [ ] <Tên mảng> =

new <Kiểu dữ liệu> [Số phần tử];

Mảng hai chiều

<Kiểu dữ liệu> [ , ] <Tên mảng> =

new <Kiểu dữ liệu> [Số dòng, số cột];

1 TỔNG QUAN NGÔN NGỮ LẬP TRÌNH C#

Trang 15

2 CẤU TRÚC ĐIỀU KHIỂN

Gồm các cấu trúc :

1 Rẽ nhánh: if…else

2 Lựa chọn: switch…case

3 Lặp: for, while, do…while, foreach

4 Các cấu trúc khác: break, continue

Trang 16

2.1 Cấu trúc rẽ nhánh

2 CẤU TRÚC ĐIỀU KHIỂN

Cấu trúc rẽ nhánh cho phép thực hiện một khối lệnh dựa vào kết quả của biểu thức điều kiện có 2 dạng:

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

Trang 17

Ví dụ: Giải và biện luận phương trình: ax+b=0

2 CẤU TRÚC ĐIỀU KHIỂN

Yêu cầu:

 Nút Giải: Giải và biện luận phương trình bậc 1, ô kết quả

(txtketqua) cho biết phương trình có nghiệm, vô nghiệm hay

vô số nghiệm Trong trường hợp có nghiệm thì ô txtnghiem

sẽ hiện kết quả nghiệm

Trang 18

switch (biểu thức)

case n1:

các câu lệnh ; break ;

case n2:

các câu lệnh ; break ;

………

case nk: <các câu lệnh> ;

break ; [default: các câu lệnh]

Phải là kiểu nguyên

2 CẤU TRÚC ĐIỀU KHIỂN

2.2 Cấu trúc lựa chọn

Trang 19

Ví dụ:

2 CẤU TRÚC ĐIỀU KHIỂN

String thu="" ; switch (DataTime.Today.Day()) {

Trang 20

for (<biểu thức khởi gán>; <bt điều kiện>; <bt tăng/giảm>) {

<khối lệnh>;

}

2 CẤU TRÚC ĐIỀU KHIỂN

2.3 Cấu trúc lặp For

 Bước 1: Khởi gán cho biểu thức 1

 Bước 2: Kiểm tra điều kiện của biểu thức 2

- Nếu biểu thức 2 đúng thì thực hiện các lệnh của vòng lặp, thực hiện biểu thức 3 Quay trở lại bước 2

- Ngược lại thoát khỏi lặp

Ví dụ: Tạo Project tính tổng giá trị dãy số từ n đến m (n<m)

Trang 21

while (<biểu thức điều kiện>)

VD: Tạo Project tính tìm số đảo của 1 số nguyên n

Trong khi điều kiện lặp còn đúng, các câu lệnh trong thân

vòng lặp còn được thực hiện tiếp

Trang 22

do { < khối lệnh> ; } while (biểu thức điều kiện);

2 CẤU TRÚC ĐIỀU KHIỂN

2.4 Cấu trúc lặp Do While

Thực hiện khối lệnh cho đến khi biểu thức điều kiện SAI

Trang 24

2 CẤU TRÚC ĐIỀU KHIỂN

2.6 Lệnh break:

Thoát khỏi các cấu trúc switch, while, for, do…while

chứa nó gần nhất

 Tại thời điểm break không cần kiểm tra kết quả của

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

 Tuy nhiên, cần phân biệt với lệnh return là lệnh trả về

từ hàm, nghĩa là thoát khỏi hàm đang thi hành, nên cũng giúp thoát luôn khỏi tất cả các vòng lặp

Trang 25

2 CẤU TRÚC ĐIỀU KHIỂN

2.7 Lệnh continue:

Được sử dụng trong các vòng lặp while, for,

do…while

 Khi lệnh continue được gọi thì chương trình sẽ quay

trở về đầu vòng lặp để bắt đầu lần lặp mới (có kiểm tra điều kiện lặp để xác định có lặp tiếp hay không)

 Nếu có các lệnh còn lại (cùng trong vòng lặp) đặt sau

continue sẽ không được thực hiện

Trang 26

3 PHƯƠNG THỨC

Phương thức/Hàm con là một đoạn chương trình độc lập thực hiện trọn vẹn một công việc nhất định và trả về giá trị cho chương trình gọi nó

Trang 27

3.2 Cú pháp khai báo

<phạm vi> <Kiểu dữ liệu> TênPhươngThức([ds các tham số]);

Trong đó:

 Kiểu dữ liệu của phương thức (đầu ra), gồm 2 loại

 void: Không trả về giá trị (các phương thức Nhập/Xuất)

 float / int / long / string / kiểu cấu trúc / … : Trả về 1 giá trị kết quả có kiểu dữ liệu tương ứng

 Phạm vi

 Xác định phạm vi hay cách phương thức được gọi

3 PHƯƠNG THỨC

Trang 28

TênPhươngThức(danh sách tên các đối số);

Những phương thức loại này thường rơi vào những nhóm chức năng: Nhập/xuất dữ liệu , thống kê, sắp xếp, liệt kê

Trang 29

3 PHƯƠNG THỨC

VD: Viết chương trình liệt kê các số nguyên tố nhỏ hơn n

Trang 30

Cài đặt phương thức:

static <Kiểu dữ liệu trả về> TênPhươngThức([ds các tham số]) {

<Kiểu dữ liệu trả về> kq;

Khai báo các biến cục bộ

Các câu lệnh / khối lệnh hay lời gọi đến phương thức khác

Trang 31

VD: Viết chương trình nhập số nguyên dương n và tính tổng

 Phân tích bài toán:

Input: n

Kiểu dữ liệu: số nguyên dương (uint)

 Giá trị n không bị thay đổi trong quá trình tính tổng Output: Tổng S

 Trả về giá trị của S

S là tổng các số nguyên dương Kiểu trả về của hàm là uint

0

; 3

Trang 32

static ulong TongS(uint n) {

2

Trang 33

3.5.Truyền tham số

 Tham số làm kết quả đầu ra: out

 Tham số vừa làm đầu vào và đầu ra: ref

 Dùng từ khóa ref hoặc out trước kiểu dữ liệu của khai báo tham số khi cài đặt phương thức và trước tên đối

số khi gọi phương thức

 Lưu ý khi dùng ref hoặc out:

Nếu sử dụng từ khóa ref thì gọi phương thức cũng dùng ref (hoặc ngược lại cho từ khóa out)

3 PHƯƠNG THỨC

Trang 34

3.6 Lấy số ngẫu nhiên

Sử dụng lớp Random

Các phương thức :

Next () Trả về số ngẫu nhiên từ 0 đến 2,147,483,646

Next (giá trị tối đa) Trả về số ngẫu nhiên từ 0 đến giá trị tối đa -1

Next (giá trị tối

thiểu, giá trị tối đa)

Trả về số ngẫu nhiên từ giá trị tối thiểu đến giá trị tối đa -1

NextDouble () Trả về số thực (double) từ 0.0 đến nhỏ hơn 1.0

3 PHƯƠNG THỨC

Trang 36

3.7 Lấy ngày giờ hệ thống

int intNg = d.Day; intNg chứa giá trị ngày

int intTh = d.Month; intTh chứa giá trị tháng

int intNm = d.Year; intNm chứa giá trị năm

int intGio = d.Hour; intGio chứa giá trị giờ

int intPhut = d.Minute; intPhut chứa giá trị phút

int intGiay = d.Second; intGiay chứa giá trị giây

3 PHƯƠNG THỨC

Trang 37

4.1 Khai báo Mảng

Mảng là một tập hợp các phần tử có cùng kiểu, được xác định vị trí trong tập hợp bằng chỉ mục

<Kiểu DL> [] tên_mảng = new <kiểu dữ liệu>[kích thước];

Ví dụ: Khai báo mảng số nguyên a kích thước 10

int[] a = new int [10];

4 MẢNG

Trang 40

Khai báo chuỗi : string s;

Ghép chuỗi: +

string a = "Xin"; string b = "chào";

string c = a + " " + b;  c = "Xin chào“

Hoặc

string.Concat(a, “ “, b);  a = “Xin Chào”

Lấy chuỗi con: Substring()

string s="Lay chuoi con".Substring(4);

 Lấy chuỗi con từ vị trí thứ 4 về sau: s = "chuoi con“

string s = "Lay chuoi con".Substring(4, 5);

5 CHUỖI

Trang 41

Thay thế chuỗi con

Replace(chuỗi cần thay, chuỗi thay thế);

string s= "thay the chuoi.".Replace('t', 'T');

 s = "Thay The chuoi"

s = "thay the chuoi.".Replace("th", "TH");

 s = "THay THe chuoi"

5 CHUỖI

Trang 42

5 CHUỖI

Định dạng chuỗi

Format (định dạng, đối số cần định dạng);

Trang 43

Chiều dài chuỗi: Thuộc tính Length

string s = "Xin chào";

int n = s.Length; // n = 8

Tách chuỗi con theo ký hiệu phân cách cho trước

Ví dụ: In ra màn hình các từ trên từng dòng, mỗi từ cách

nhau bằng dấu phẩy (,) hoặc khoảng trắng string s = "Hom nay, ngay 02 thang 03 nam 2010";

foreach (string tu in s.Split(' ', ','))

5 CHUỖI

Trang 44

Ví dụ: In ra từ có độ dài dài nhất trong chuỗi cho trước

(các từ cách nhau khoảng trắng hoặc dấu chấm câu)

string s = "Hom nay, ngay 02 thang 03 nam 2010";

string tumax = "";

foreach (string tu in s.Split(' ', ',', '.', '!', '?', ';'))

if (tu != "" && tu.Length > tumax.Length) tumax = tu;

txtKetqua.Text= "Tu dai nhat: " + tumax;

5 CHUỖI

Ngày đăng: 25/10/2020, 23:20

TỪ KHÓA LIÊN QUAN

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