Bài giảng Kỹ thuật lập trình: Mảng - Phan Hồ Duy Phương
Số trang: 46
Loại file: pdf
Dung lượng: 1.09 MB
Lượt xem: 16
Lượt tải: 0
Xem trước 5 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Kỹ thuật lập trình: Mảng được biên soạn gồm các nội dung chính sau: Giới thiệu về mảng; Khai báo mảng; Duyệt mảng; Các bài toán trên mảng. Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Bài giảng Kỹ thuật lập trình: Mảng - Phan Hồ Duy Phương KỸ THUẬT LẬP TRÌNH Lecturer: Phan Hồ Duy Phương Mekong University Nhập Môn Lập Trình – Mekong University 1 Nội dung 1. Giới thiệu 2. Biểu diễn dữ liệu trong máy tính 3. Ngôn ngữ lập trình C# 4. Lập trình hàm 5. Mảng 6. Thuật toán Nhập Môn Lập Trình – Mekong University 2 5. Mảng 1. Giới thiệu 2. Khai báo mảng 3. Duyệt mảng 4. Các bài toán trên mảng Nhập Môn Lập Trình – Mekong University 3 5. Mảng 1. Giới thiệu 2. Khai báo mảng 3. Duyệt mảng 4. Các bài toán trên mảng Nhập Môn Lập Trình – Mekong University 4 5.1. Giới thiệu VD: Viết chương trình nhập vào 10 số nguyên, xuất tổng các số nguyên. void main() { int n1,n2,n3,…,n10; C.Write(“Nhap gia tri \n”); Console.Read(n1); …// 9 lệnh nhập n2..n10 C.Write(“Tong:{0}”,n1+n2+…+n10) ; } Nhập Môn Lập Trình – Mekong University 5 5.1. Giới thiệu o Yêu cầu thêm: nhập 100, 1000 số. o Cần lưu trữ n số nguyên => không thực hiện được oCần sắp xếp n số nguyên => không thực hiện được => Các kiểu dữ liệu cơ sở chưa đáp ứng việc lưu trữ và truy xuất Giải pháp: Kiểu dữ liệu mới cho phép lưu trữ một dãy các số nguyên và dễ dàng truy xuất. Nhập Môn Lập Trình – Mekong University 6 5.1. Giới thiệu KIỂU DỮ LIỆU MẢNG (Array) oLà một kiểu dữ liệu có cấu trúc do người lập trình định nghĩa. oBiểu diễn một dãy các biến có cùng kiểu. VD: dãy các số nguyên, dãy các ký tự… oKích thước được xác định ngay khi khai báo và không bao giờ thay đổi. oNgôn ngữ C luôn cấp phát một khối nhớ liên tục cho một biến kiểu mảng. Nhập Môn Lập Trình – Mekong University 7 5. Mảng 1. Giới thiệu 2. Khai báo mảng 3. Duyệt mảng 4. Các bài toán trên mảng Nhập Môn Lập Trình – Mekong University 8 5.2. Khai báo Mảng KHAI BÁO MẢNG Khai báo tường minh: [ ] = new []; Lưu ý: oPhải xác định cụ thể (hằng) khi khai báo. oBộ nhớ sử dụng = * sizeof() oMột dãy liên tục có chỉ số từ 0 đến - 1 Nhập Môn Lập Trình – Mekong University 9 5.2. Khai báo Mảng KHAI BÁO MẢNG VD: int[] A= new int[10]; Giá trị ô nhớ tại vị trí i: A[i] Ô nhớ có kích cỡ sizeof(int) A 0 1 2 3 4 5 6 7 8 9 Chỉ số phần tử Nhập Môn Lập Trình – Mekong University 10 5.2. Khai báo Mảng KHAI BÁO MẢNG int[] A = new int[10]; int[] B = new int[10]; A 0 1 2 3 4 5 6 7 8 9 B 0 1 2 3 4 5 6 7 8 9 Nhập Môn Lập Trình – Mekong University 11 5.2. Khai báo Mảng KHỞI TẠO GIÁ TRỊ MẢNG oKhởi tạo mọi giá trị mảng: int[] A = {11, 22, 33, 44}; 11 22 33 44 0 1 2 3 int[] A = {11, 22}; 11 22 0 1 Nhập Môn Lập Trình – Mekong University 12 5.2. Khai báo Mảng KHỞI TẠO GIÁ TRỊ MẢNG o[] = {GT1,GT2,… }; VD: string[] chuSo = {“không”, “một”, “hai”, “ba”, “bốn”, “năm”, “sáu”, “bảy”, “tám”, “chín”}; string[] week = {“Hai”,“Ba”,“Tư”,“Năm”,“Sáu”,“Bảy”, “Chủ Nhật”}; Nhập Môn Lập Trình – Mekong University 13 5.2. Khai báo Mảng SỐ PHẦN TỬ MẢNG oCó thể khai báo số phần tử ngay lúc khai báo. int[] a = new int a[20]; oXác định trong thời gian run time int n;int[] a; n = Console.Read(); a = new int[n]; Nhập Môn Lập Trình – Mekong University 14 Bài tập 1. Viết chương trình nhập vào một mảng số nguyên có n phần tử. Với n do người dung nhập vào. Nhập Môn Lập Trình – Mekong University 15 5. Mảng 1. Giới thiệu 2. Khai báo mảng 3. Duyệt mảng 4. Các bài toán trên mảng Nhập Môn Lập Trình – Mekong University 16 5.3. Duyệt Mảng TRUY XUẤT PHẦN TỬ MẢNG Thông qua chỉ số: [] oVD: int[] a= {11, 22, 33, 44}; Console.Write(a[0]) // xuất 11 Console.Write(a[3]) // xuất 44 oKhông hợp lệ: a[0] a[1] a[2] a[3] a[4], a[5], a[-1] 11 22 33 44 0 1 2 3 Nhập Môn Lập Trình – Mekong University 17 5.3. Duyệt Mảng PHÉP GÁN HAI MẢNG oSử dụng phép gán (=) cho biến mảng: Hai mảng trỏ (tham chiếu) đến cùng vùng nhớ. Thay đổi giá trị mảng này sẽ ảnh hưởng đến mảng kia oVD: int[] a= {11, 22}; b = a; Console.Write(b[0]);// Xuất 11 b[1] = 20; Console.Write(a[1]);// Xuất 20 Nhập Môn Lập Trình – Mekong University 18 5.3. Duyệt Mảng PHÉP GÁN HAI MẢNG oSao chép giá trị: dung hàm Clone() oVD: int[] a= {11, 22}; b = a.Clone() as int[]; a[0] = 50; Console.Write(b[0]);// Xuất 11 Console.Write(a[1]);// Xuất 22 Nhập Môn Lập Trình – Mekong University 19 5.3. Duyệt Mảng THUỘC TÍNH MẢNG oLấy số lượng phần tử mảng: Mang.Length o Số chiều (Demension): Mang.Rank oVD: int[] a= new int[10]; Console.Write(a.Length);// Xuất 10 Console.Write(a.Rank);// Xuất 1, vì là mảng 1 chiều Nhập Môn Lập Trình – Mekong University 20 ...
Nội dung trích xuất từ tài liệu:
Bài giảng Kỹ thuật lập trình: Mảng - Phan Hồ Duy Phương KỸ THUẬT LẬP TRÌNH Lecturer: Phan Hồ Duy Phương Mekong University Nhập Môn Lập Trình – Mekong University 1 Nội dung 1. Giới thiệu 2. Biểu diễn dữ liệu trong máy tính 3. Ngôn ngữ lập trình C# 4. Lập trình hàm 5. Mảng 6. Thuật toán Nhập Môn Lập Trình – Mekong University 2 5. Mảng 1. Giới thiệu 2. Khai báo mảng 3. Duyệt mảng 4. Các bài toán trên mảng Nhập Môn Lập Trình – Mekong University 3 5. Mảng 1. Giới thiệu 2. Khai báo mảng 3. Duyệt mảng 4. Các bài toán trên mảng Nhập Môn Lập Trình – Mekong University 4 5.1. Giới thiệu VD: Viết chương trình nhập vào 10 số nguyên, xuất tổng các số nguyên. void main() { int n1,n2,n3,…,n10; C.Write(“Nhap gia tri \n”); Console.Read(n1); …// 9 lệnh nhập n2..n10 C.Write(“Tong:{0}”,n1+n2+…+n10) ; } Nhập Môn Lập Trình – Mekong University 5 5.1. Giới thiệu o Yêu cầu thêm: nhập 100, 1000 số. o Cần lưu trữ n số nguyên => không thực hiện được oCần sắp xếp n số nguyên => không thực hiện được => Các kiểu dữ liệu cơ sở chưa đáp ứng việc lưu trữ và truy xuất Giải pháp: Kiểu dữ liệu mới cho phép lưu trữ một dãy các số nguyên và dễ dàng truy xuất. Nhập Môn Lập Trình – Mekong University 6 5.1. Giới thiệu KIỂU DỮ LIỆU MẢNG (Array) oLà một kiểu dữ liệu có cấu trúc do người lập trình định nghĩa. oBiểu diễn một dãy các biến có cùng kiểu. VD: dãy các số nguyên, dãy các ký tự… oKích thước được xác định ngay khi khai báo và không bao giờ thay đổi. oNgôn ngữ C luôn cấp phát một khối nhớ liên tục cho một biến kiểu mảng. Nhập Môn Lập Trình – Mekong University 7 5. Mảng 1. Giới thiệu 2. Khai báo mảng 3. Duyệt mảng 4. Các bài toán trên mảng Nhập Môn Lập Trình – Mekong University 8 5.2. Khai báo Mảng KHAI BÁO MẢNG Khai báo tường minh: [ ] = new []; Lưu ý: oPhải xác định cụ thể (hằng) khi khai báo. oBộ nhớ sử dụng = * sizeof() oMột dãy liên tục có chỉ số từ 0 đến - 1 Nhập Môn Lập Trình – Mekong University 9 5.2. Khai báo Mảng KHAI BÁO MẢNG VD: int[] A= new int[10]; Giá trị ô nhớ tại vị trí i: A[i] Ô nhớ có kích cỡ sizeof(int) A 0 1 2 3 4 5 6 7 8 9 Chỉ số phần tử Nhập Môn Lập Trình – Mekong University 10 5.2. Khai báo Mảng KHAI BÁO MẢNG int[] A = new int[10]; int[] B = new int[10]; A 0 1 2 3 4 5 6 7 8 9 B 0 1 2 3 4 5 6 7 8 9 Nhập Môn Lập Trình – Mekong University 11 5.2. Khai báo Mảng KHỞI TẠO GIÁ TRỊ MẢNG oKhởi tạo mọi giá trị mảng: int[] A = {11, 22, 33, 44}; 11 22 33 44 0 1 2 3 int[] A = {11, 22}; 11 22 0 1 Nhập Môn Lập Trình – Mekong University 12 5.2. Khai báo Mảng KHỞI TẠO GIÁ TRỊ MẢNG o[] = {GT1,GT2,… }; VD: string[] chuSo = {“không”, “một”, “hai”, “ba”, “bốn”, “năm”, “sáu”, “bảy”, “tám”, “chín”}; string[] week = {“Hai”,“Ba”,“Tư”,“Năm”,“Sáu”,“Bảy”, “Chủ Nhật”}; Nhập Môn Lập Trình – Mekong University 13 5.2. Khai báo Mảng SỐ PHẦN TỬ MẢNG oCó thể khai báo số phần tử ngay lúc khai báo. int[] a = new int a[20]; oXác định trong thời gian run time int n;int[] a; n = Console.Read(); a = new int[n]; Nhập Môn Lập Trình – Mekong University 14 Bài tập 1. Viết chương trình nhập vào một mảng số nguyên có n phần tử. Với n do người dung nhập vào. Nhập Môn Lập Trình – Mekong University 15 5. Mảng 1. Giới thiệu 2. Khai báo mảng 3. Duyệt mảng 4. Các bài toán trên mảng Nhập Môn Lập Trình – Mekong University 16 5.3. Duyệt Mảng TRUY XUẤT PHẦN TỬ MẢNG Thông qua chỉ số: [] oVD: int[] a= {11, 22, 33, 44}; Console.Write(a[0]) // xuất 11 Console.Write(a[3]) // xuất 44 oKhông hợp lệ: a[0] a[1] a[2] a[3] a[4], a[5], a[-1] 11 22 33 44 0 1 2 3 Nhập Môn Lập Trình – Mekong University 17 5.3. Duyệt Mảng PHÉP GÁN HAI MẢNG oSử dụng phép gán (=) cho biến mảng: Hai mảng trỏ (tham chiếu) đến cùng vùng nhớ. Thay đổi giá trị mảng này sẽ ảnh hưởng đến mảng kia oVD: int[] a= {11, 22}; b = a; Console.Write(b[0]);// Xuất 11 b[1] = 20; Console.Write(a[1]);// Xuất 20 Nhập Môn Lập Trình – Mekong University 18 5.3. Duyệt Mảng PHÉP GÁN HAI MẢNG oSao chép giá trị: dung hàm Clone() oVD: int[] a= {11, 22}; b = a.Clone() as int[]; a[0] = 50; Console.Write(b[0]);// Xuất 11 Console.Write(a[1]);// Xuất 22 Nhập Môn Lập Trình – Mekong University 19 5.3. Duyệt Mảng THUỘC TÍNH MẢNG oLấy số lượng phần tử mảng: Mang.Length o Số chiều (Demension): Mang.Rank oVD: int[] a= new int[10]; Console.Write(a.Length);// Xuất 10 Console.Write(a.Rank);// Xuất 1, vì là mảng 1 chiều Nhập Môn Lập Trình – Mekong University 20 ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Kỹ thuật lập trình Kỹ thuật lập trình Khai báo mảng Các bài toán trên mảng Kiểu dữ liệu mảngGợi ý tài liệu liên quan:
-
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 259 0 0 -
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 201 0 0 -
Giới thiệu môn học Ngôn ngữ lập trình C++
5 trang 190 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 159 0 0 -
Luận văn: Nghiên cứu kỹ thuật giấu tin trong ảnh Gif
33 trang 150 0 0 -
Báo cáo thực tập Công nghệ thông tin: Lập trình game trên Unity
27 trang 117 0 0 -
Giáo trình về phân tích thiết kế hệ thống thông tin
113 trang 114 0 0 -
LUẬN VĂN: Tìm hiểu kỹ thuật tạo bóng cứng trong đồ họa 3D
41 trang 106 0 0 -
Bài giảng Kỹ thuật lập trình - Chương 10: Tổng kết môn học (Trường Đại học Bách khoa Hà Nội)
67 trang 104 0 0 -
Giáo trình Nhập môn lập trình VB6: Phần 2
184 trang 85 0 0