7 Mang trong C

48 20 0
7 Mang trong C

Đ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

Mảng trong C# Thêm một phần tử vào cuối mảng Sử dụng phương thức Resize của lớp Array để tăng thêm kích thước của mảng và gán giá trị cho phần tử cần thêm vào.. Đại học Hòa Bình..[r]

(1)C# Giới thiệu ngôn ngữ lập trình C# Biến kiểu liệu và toán tử C# Cấu trúc chương trình C# Lớp và đối tượng C# Tính kế thừa và đa hình C# Các lớp trừu tượng và giao diện C# Mảng C# Đại học Hòa Bình 1/46 (2) C# Windows Forms Thao tác với chuỗi 10 Các điều khiển và hộp hội thoại 11 ADO.Net C# 12 Thao tác với các file và luồng liệu 13 Đa tuyến 14 Kiểm thử Đại học Hòa Bình 2/46 (3) Mảng C# Mảng là tập hợp hữu hạn các phần tử có cùng kiểu liệu Khai báo mảng <kiểu liệu>[] <tên mảng> int[] so; float[] diem; string[] tenlop; Tạo thể mảng cách sử dụng từ khóa new int[] so = new int[10]; float[] diem = new float[3]; Đại học Hòa Bình 3/46 (4) Mảng C# Giá trị mặc định tạo mảng có kiểu liệu giá trị, thành phần chứa giá trị mặc định kiểu liệu int[] so = new int[5]; tạo mảng năm số nguyên, và thành phần thiết lập giá trị mặc định là Đại học Hòa Bình 4/46 (5) Mảng C# Khởi tạo thành phần mảng Khởi tạo nội dung mảng lúc tạo thể mảng cách đặt giá trị bên dấu ngoặc ({}) C# cung cấp hai cú pháp để khởi tạo các thành phần mảng, cú pháp dài và cú pháp ngắn: Đại học Hòa Bình 5/46 (6) Mảng C# Truy cập các thành phần mảng Để truy cập vào thành phần mảng ta có thể sử dụng toán tử mục ([]) Mảng dùng sở 0, đó mục thành phần đầu tiên mảng luôn luôn là Đại học Hòa Bình 6/46 (7) Mảng C# Khai báo mảng số nguyên gồm phần tử, nhập giá trị các phần tử từ bàn phím và kết lên màn hình Đại học Hòa Bình 7/46 (8) Mảng C# Sử dụng thuộc tính Length để lấy tổng số phần tử mảng Đại học Hòa Bình 8/46 (9) Mảng C# Sử dụng thuật toán xếp để xếp các phần tử mảng theo chiều tăng dần Đại học Hòa Bình 9/46 (10) Mảng C# Sử dụng phương thức sort mảng để xếp các phần tử mảng Đại học Hòa Bình 10/46 (11) Mảng C# Từng bước xếp các phần tử mảng theo chiều tăng dần Đại học Hòa Bình 11/46 (12) Mảng C# Ngôn ngữ C# cung cấp cú pháp chuẩn cho việc khai báo đối tượng Array  đối tượng kiểu System.Array Một số các thuộc tính và phương thức lớp System.Array Đại học Hòa Bình 12/46 (13) Mảng C# Đại học Hòa Bình 13/46 (14) Mảng C# Sử dụng phương thức Array.Reverse() để đảo ngược mảng đã xếp Đại học Hòa Bình 14/46 (15) Mảng C# Tìm giá trị mảng  trả vị trí phần tử tìm thấy (trả -1 không tìm thấy) Đại học Hòa Bình 15/46 (16) Mảng C# Thêm phần tử vào cuối mảng Sử dụng phương thức Resize lớp Array để tăng thêm kích thước mảng và gán giá trị cho phần tử cần thêm vào Đại học Hòa Bình 16/46 (17) Mảng C# Thêm phần tử vào vị trí mảng B1 Xác định vị trí k cần chèn thêm phần tử B2 Sử dụng phương thức Resize lớp Array để tăng thêm kích thước mảng phần tử B3 Dịch chuyển giá trị phần tử vị trí có số k đến phần tử kế cuối có số n-1 sang phải phần tử B4.Gán giá trị cho phần tử vị trí thứ k vd minh họa sau: Đại học Hòa Bình 17/46 (18) Mảng C# Đại học Hòa Bình 18/46 (19) Mảng C# Xóa phần tử cuối mảng Sử dụng phương thức Resize lớp Array để giảm kích thước mảng Đại học Hòa Bình 19/46 (20) Mảng C# Xóa phần tử vị trí mảng Đại học Hòa Bình 20/46 (21) Mảng C# Đại học Hòa Bình 21/46 (22) Mảng C# Mảng đa chiều Mảng hai chiều tổ chức thành các dòng và cột, đó các dòng là tính theo hàng ngang mảng, và các cột tính theo hàng dọc mảng int[,] A = new int[100,100]; Ngôn ngữ C# hỗ trợ hai kiểu mảng đa chiều là: Mảng đa chiều cùng kích thước: mảng này dòng mảng có cùng kích thước với Mảng này có thể là hai hay nhiều hai chiều Mảng đa chiều không cùng kích thước: mảng này các dòng có thể không cùng kích thước với Đại học Hòa Bình 22/46 (23) Mảng C# Mảng đa chiều cùng kích thước Mảng đa chiều cùng kích thước còn gọi là mảng hình chữ nhật (rectanguler array) Vd: Viết chương trình – nhập giá trị cho ma trận từ bàn phím – tính tổng ma trận, tính tổng hàng, tính tổng cột , tìm giá trị lớn và nhỏ cho hàng, cột– kết lên màn hình Đại học Hòa Bình 23/46 (24) Mảng C# Đại học Hòa Bình 24/46 (25) Mảng C# Đại học Hòa Bình 25/46 (26) Mảng C# Sử dụng từ khóa new để khởi tạo tổng số phần tử hàng và cột mảng Đại học Hòa Bình 26/46 (27) Mảng C# Khởi tạo giá trị cho các thành phần mảng chiều Đại học Hòa Bình 27/46 (28) Mảng C# Mảng đa chiều có kích khác Kích thước các chiều có thể không Khi tạo mảng đa chiều kích thước khác thì khai báo số dòng mảng trước Sau đó dòng giữ mảng có kích thước Những mảng này khai báo riêng Sau đó khởi tạo giá trị các thành phần mảng Trong mảng này, chiều là mảng chiều Đại học Hòa Bình 28/46 (29) Mảng C# Đại học Hòa Bình 29/46 (30) Mảng C# Danh sách mảng Lớp ArrayList là kiểu liệu mảng mà kích thước nó gia tăng cách động theo yêu cầu ArrayList cung cấp số phương thức và thuộc tính cho các thao tác liên quan đến mảng Đại học Hòa Bình 30/46 (31) Mảng C# Đại học Hòa Bình 31/46 (32) Mảng C# Đại học Hòa Bình 32/46 (33) Mảng C# Đại học Hòa Bình 33/46 (34) Mảng C# Sử dụng đối tượng Arraylist để tạo danh sách mảng các phần tử Đại học Hòa Bình 34/46 (35) Mảng C# Stack Đại học Hòa Bình 35/46 (36) Mảng C# Queue Đại học Hòa Bình 36/46 (37) Mảng C# Kiểu từ điển Từ điển là kiểu tập hợp đó có hai thành phần chính liên hệ với là khóa và giá trị Thuộc tính quan trọng từ điển tốt là dễ thêm giá trị vào, và nhanh chóng truy cập đến giá trị Một vài từ điển thì nhanh thời gian thêm giá trị vào, số khác thì tối ưu cho việc truy cập Một minh họa cho kiểu từ điển là kiểu liệu hashtable hay còn gọi là bảng băm Hashtable là kiểu từ điển tối ưu cho việc truy cập nhanh Một số các phương thức chính và các thuộc tính kiểu liệu Hashtable Đại học Hòa Bình 37/46 (38) Mảng C# Đại học Hòa Bình 38/46 (39) Mảng C# Trong Hashtable, giá trị lưu trữ vùng Mỗi vùng đánh số tương tự là offset mảng Do khóa có thể không phải là số nguyên, nên phải chuyển các khóa thành các khóa số để ánh xạ đến vùng giá trị đánh số Mỗi khóa phải cung cấp phương thức GetHashCode() để nhận giá trị mã hóa thành số nó Thêm giá trị vào Hashtable thì Hashtable gọi phương thức GetHashCode() cho giá trị mà chúng ta cung cấp Phương thức này trả số nguyên, xác định vùng mà giá trị lưu trữ hashtable Đại học Hòa Bình 39/46 (40) Mảng C# Giao diện IDictionary Hashtable là từ điển vì nó thực thi giao diện IDictionary IDictionary cung cấp thuộc tính public là Item Thuộc tính Item truy cập giá trị thông qua khóa xác định Thuộc tính Item khai báo sau Thuộc tính Item thực thi ngôn ngữ C# với toán tử mục ([]) Do chúng ta có thể truy cập item đối tượng từ điển cú pháp giống truy cập mảng Đại học Hòa Bình 40/46 (41) Mảng C# vd: Thêm item vào bảng Hashtable và sau đó truy cập lại chúng thông qua thuộc tính Item Đại học Hòa Bình 41/46 (42) Mảng C# Tập khóa và tập giá trị Hai thuộc tính là thuộc tính Keys, và thuộc tính Values Trong đó Keys truy cập đối tượng ICollection với tất khóa Hashtable, và Values truy cập đối tượng ICollection với tất giá trị Đại học Hòa Bình 42/46 (43) Mảng C# Sử dụng phương thức Remove và thuộc tính Count Hashtable Đại học Hòa Bình 43/46 (44) Mảng C# Đại học Hòa Bình 44/46 (45) Mảng C# Câu hỏi Viết chương trình tạo mảng chiều nguyên chứa giá trị các phần tử nhập vào từ bàn phím Sắp xếp các thành phần mảng theo thứ tự tăng dần và kết Làm tương tự với trường hợp xếp mảng theo thứ tự giảm dần Viết chương trình tìm số lớn và nhỏ mảng chiều có kích thước cố định Các thành phần mảng nhập vào từ bàn phím Viết chương trình sử dụng ArrayList để tạo mảng Sử dụng thuộc tính Count và Capacity Đại học Hòa Bình 45/46 (46) Mảng C# Viết chương trình cho phép người dùng nhập vào ma trận n x m, sau đó tìm kiếm giá trị và kết là thứ tự giá trị cần tìm ma trận Viết chương trình tạo đối tượng Queue tên là myQueue Khởi tạo myQueue với giá trị ngẫu nhiên Hãy thực các bước sau: Đại học Hòa Bình 46/46 (47) Mảng C# Viết chương trình tạo đối tượng Stack tên là myStack Khởi tạo myStack với giá trị ngẫu nhiên Hãy thực các bước sau: Viết chương sử dụng kiểu liệu từ điển để quản lý thông tin lớp học Trong đó khóa là chuỗi mã số sinh viên, giá trị là chuỗi tên học viên Đại học Hòa Bình 47/46 (48) Đại học Hòa Bình 48/46 (49)

Ngày đăng: 10/09/2021, 12:19

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan