Bài giảng Kỹ thuật lập trình - Chương 2
Số trang: 35
Loại file: pptx
Dung lượng: 328.63 KB
Lượt xem: 17
Lượt tải: 0
Xem trước 4 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Chương 2 Xử lý mảng và chuỗi thuộc bài giảng Kỹ thuật lập trình. Cùng nắm kiến thức trong chương này thông qua việc tìm hiểu các nội dung sau: mảng, các thao tác trên mảng, chuỗi, các thao tác trên chuỗi.
Nội dung trích xuất từ tài liệu:
Bài giảng Kỹ thuật lập trình - Chương 2 Chương 2Xử lý mảng và chuỗi Nội dungv Mảngv Các thao tác trên mảngv Chuỗiv Các thao tác trên chuỗi Mảngv Là tập hợp nhiều phần tử có cùng kiểu dữ liệuv Số phần tử trong mảng được xác định trướcv Mỗi phần tử được đánh số chỉ mục, bắt đ ầu từ 0 Hình ảnhMột phòng chứa các tủv Số lượng tủ chứa ?v Tủ Chứa gì?v Số thứ tự tủ, chỉ mục tủ Ví dụ mảngMảng các từKhoa Tin Học Quản Lý 0 1 2 3 4Mảng các số nguyên 4 0 6 1 1 2 8 9 0 1 2 3 4 5 6 7 Khai báo mảngv KiểuDữLiệu[] tênMảng;v Ví dụ § int[] bangDiem; § string[] loiNoi; § DateTime[] ngaySinh; Khởi tạo mảngv tenMang = new KieuDuLieu[soPhanTu]v Ví dụ § diem = new int[10]; § loiNoi = new string[20]; § ngaySinh = new DateTime[7]; § float diemTB = new float[5]; 0 0 0 0 0 0 1 2 3 4 Khởi tạo và gán giá trịv tenMang = new KieuDuLieu[spt]{gtri1, gtri2, gtri3,…}; § diem = new int[5]{ 5, 6, 7, 6, 9 }v Giá trị không nhất thiết phải là hằng số § Ví dụRandom r = new Random();int[] pins = new int[4]{ r.Next() % 10, r.Next() % 10, r.Next() % 10, r.Next() % 10 };v Số giá trị trong dấu ngoặc phải bằng số phần tử mảng được khai báo Truy xuất từng phần tử mảngv Xác định số phần tử của mảng § tenMang.Lengthv Truy xuất phần tử: tenMang[soThuTu] § 0 Gán giá trị cho phần tử mảngv Gán điểm thứ 3 của mảng diem là 10 § diem[2] = 10 5 6 10 6 9 0 1 2 3 4v Gán điểm thứ 4 của mảng diem bằng điểm thứ nhất cộng 4 § diem[3] = diem[0] + 4 5 6 10 9 9 0 1 2 3 4 Duyệt mảngv Dùng vòng lặp forv Ví dụ duyệt mảng diemfor (int i = 0; i < diem.Length; i++){ Console.WriteLine(diem[i].ToString());}v Duyệt và gán phần tửfor (int i = 0; i < diem.Length; i++){ diem[i] += 1;Console.WriteLine(diem[i].ToString());} Duyệt mảng bằng foreachv Ví dụforeach (int i in diem){ Console.WriteLine(i.ToString());}v Không nên dùng foreach khi § Cần duyệt một phần trong mảng (ví dụ duyệt từ phần tử thứ 2 tới thứ 10) § Cần duyệt từ cuối về đầu mảng § Cần biết chỉ số mảng trong vòng lặp § Cần thay đổi giá trị của phần tử mảng Sao chép mảngv Mảng là kiểu tham chiếu gán mảng là gán tham chiếuv Ví dụ § int[] mangA = diem; § mangA và diem cùng tham chiếu đến vùng nhớ chứa các phần tử của mảng § Thay đổi giá trị trong mangA sẽ ảnh hưởng đến diem Sao chép mảng diem5 6 7 6 9 mangA diem5 6 8 6 9 mangA Sao chép mảngv Tạo mảng mới và gán giá trị từ mảng cũv Dùng CopyTo § int[] mangA = new int[diem.Length]; § diem.CopyTo(mangA, 0);v Dùng Array.Copy § Array.Copy(diem, mangA, diem.Length);v Dùng Clone § mangA = (int[]) diem.Clone(); Kiểu ký tựv Lưu trữ ký tự Unicode 16-bitv Kiểu trong .NET frameword: System.Charv Miền giá trị: [0, 65535]v Cách khai báo § Khai báo ký tự • char ch1 = a; § Chuyển từ số nguyên • char ch2 = (char) 65; // Ký tự ‘A’ § Chú ý: • Sử dụng dấu nháy đơn để khai báo kiểu char Chuyển đổi kiểu ký tựv char.Parse(string)v Convert.ToChar(string)v Chú ý: Chuỗi đưa vào chuyển đổi chỉ có 1 ký tự. § char ch1 = Convert.ToChar(a); // ch1 = ‘a’ § char ch1 = Convert.ToChar(aa); // báo lỗi So sánh ký tựv Compare: § So sánh 2 ký tự, trả về hiệu số giữa ký tự so sánh và ký tự được so sánh. § Ví dụ: char ch1 = A; char ch2 = B; Console.WriteLine(ch1.CompareTo(ch2)); § Kết quả: -1 (ký tự ch1 nhỏ hơn 1 so với ký tự ch2) So sánh ký tựv Equals § True: nếu 2 ký tự bằng nhau § False: nếu 2 ký tự không bằng nhauv Ví dụ char ch1 = A; char ch2 = (char)65; char ch3 = B; Console.WriteLine(ch1.Equals(ch2)); //Kết quả ‘True’ Console.WriteLine(ch1.Equals(ch3)); //Kết quả ‘False’ Kiểm tra ký tựv C ...
Nội dung trích xuất từ tài liệu:
Bài giảng Kỹ thuật lập trình - Chương 2 Chương 2Xử lý mảng và chuỗi Nội dungv Mảngv Các thao tác trên mảngv Chuỗiv Các thao tác trên chuỗi Mảngv Là tập hợp nhiều phần tử có cùng kiểu dữ liệuv Số phần tử trong mảng được xác định trướcv Mỗi phần tử được đánh số chỉ mục, bắt đ ầu từ 0 Hình ảnhMột phòng chứa các tủv Số lượng tủ chứa ?v Tủ Chứa gì?v Số thứ tự tủ, chỉ mục tủ Ví dụ mảngMảng các từKhoa Tin Học Quản Lý 0 1 2 3 4Mảng các số nguyên 4 0 6 1 1 2 8 9 0 1 2 3 4 5 6 7 Khai báo mảngv KiểuDữLiệu[] tênMảng;v Ví dụ § int[] bangDiem; § string[] loiNoi; § DateTime[] ngaySinh; Khởi tạo mảngv tenMang = new KieuDuLieu[soPhanTu]v Ví dụ § diem = new int[10]; § loiNoi = new string[20]; § ngaySinh = new DateTime[7]; § float diemTB = new float[5]; 0 0 0 0 0 0 1 2 3 4 Khởi tạo và gán giá trịv tenMang = new KieuDuLieu[spt]{gtri1, gtri2, gtri3,…}; § diem = new int[5]{ 5, 6, 7, 6, 9 }v Giá trị không nhất thiết phải là hằng số § Ví dụRandom r = new Random();int[] pins = new int[4]{ r.Next() % 10, r.Next() % 10, r.Next() % 10, r.Next() % 10 };v Số giá trị trong dấu ngoặc phải bằng số phần tử mảng được khai báo Truy xuất từng phần tử mảngv Xác định số phần tử của mảng § tenMang.Lengthv Truy xuất phần tử: tenMang[soThuTu] § 0 Gán giá trị cho phần tử mảngv Gán điểm thứ 3 của mảng diem là 10 § diem[2] = 10 5 6 10 6 9 0 1 2 3 4v Gán điểm thứ 4 của mảng diem bằng điểm thứ nhất cộng 4 § diem[3] = diem[0] + 4 5 6 10 9 9 0 1 2 3 4 Duyệt mảngv Dùng vòng lặp forv Ví dụ duyệt mảng diemfor (int i = 0; i < diem.Length; i++){ Console.WriteLine(diem[i].ToString());}v Duyệt và gán phần tửfor (int i = 0; i < diem.Length; i++){ diem[i] += 1;Console.WriteLine(diem[i].ToString());} Duyệt mảng bằng foreachv Ví dụforeach (int i in diem){ Console.WriteLine(i.ToString());}v Không nên dùng foreach khi § Cần duyệt một phần trong mảng (ví dụ duyệt từ phần tử thứ 2 tới thứ 10) § Cần duyệt từ cuối về đầu mảng § Cần biết chỉ số mảng trong vòng lặp § Cần thay đổi giá trị của phần tử mảng Sao chép mảngv Mảng là kiểu tham chiếu gán mảng là gán tham chiếuv Ví dụ § int[] mangA = diem; § mangA và diem cùng tham chiếu đến vùng nhớ chứa các phần tử của mảng § Thay đổi giá trị trong mangA sẽ ảnh hưởng đến diem Sao chép mảng diem5 6 7 6 9 mangA diem5 6 8 6 9 mangA Sao chép mảngv Tạo mảng mới và gán giá trị từ mảng cũv Dùng CopyTo § int[] mangA = new int[diem.Length]; § diem.CopyTo(mangA, 0);v Dùng Array.Copy § Array.Copy(diem, mangA, diem.Length);v Dùng Clone § mangA = (int[]) diem.Clone(); Kiểu ký tựv Lưu trữ ký tự Unicode 16-bitv Kiểu trong .NET frameword: System.Charv Miền giá trị: [0, 65535]v Cách khai báo § Khai báo ký tự • char ch1 = a; § Chuyển từ số nguyên • char ch2 = (char) 65; // Ký tự ‘A’ § Chú ý: • Sử dụng dấu nháy đơn để khai báo kiểu char Chuyển đổi kiểu ký tựv char.Parse(string)v Convert.ToChar(string)v Chú ý: Chuỗi đưa vào chuyển đổi chỉ có 1 ký tự. § char ch1 = Convert.ToChar(a); // ch1 = ‘a’ § char ch1 = Convert.ToChar(aa); // báo lỗi So sánh ký tựv Compare: § So sánh 2 ký tự, trả về hiệu số giữa ký tự so sánh và ký tự được so sánh. § Ví dụ: char ch1 = A; char ch2 = B; Console.WriteLine(ch1.CompareTo(ch2)); § Kết quả: -1 (ký tự ch1 nhỏ hơn 1 so với ký tự ch2) So sánh ký tựv Equals § True: nếu 2 ký tự bằng nhau § False: nếu 2 ký tự không bằng nhauv Ví dụ char ch1 = A; char ch2 = (char)65; char ch3 = B; Console.WriteLine(ch1.Equals(ch2)); //Kết quả ‘True’ Console.WriteLine(ch1.Equals(ch3)); //Kết quả ‘False’ Kiểm tra ký tựv C ...
Tìm kiếm theo từ khóa liên quan:
Học lập trình C Xử lý mảng và chuỗi Bài giảng Kỹ thuật lập trình Kỹ thuật lập trình C Ngôn ngữ lập trình Thực hành lập trìnhTài liệu liên quan:
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 276 0 0 -
Bài thuyết trình Ngôn ngữ lập trình: Hệ điều hành Window Mobile
30 trang 268 0 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 266 0 0 -
Giáo trình Lập trình cơ bản với C++: Phần 1
77 trang 232 0 0 -
Bài giảng Một số hướng nghiên cứu và ứng dụng - Lê Thanh Hương
13 trang 226 0 0 -
Giáo án Tin học lớp 11 (Trọn bộ cả năm)
125 trang 218 1 0 -
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 208 0 0 -
Bài tập lập trình Windows dùng C# - Bài thực hành
13 trang 186 0 0 -
Giáo trình Lập trình C căn bản: Phần 1
64 trang 170 0 0 -
Bài giảng Nhập môn về lập trình - Chương 1: Giới thiệu về máy tính và lập trình
30 trang 169 0 0