MẢNG NHIỀU CHIỀU

28 269 0
Tài liệu đã được kiểm tra trùng lặp
MẢNG NHIỀU CHIỀU

Đ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 NHIỀU CHIỀU Vì sao dùng mảng nhiều chiều? Cách khai báo mảng hai chiều Truy xuất mảng hai chiều Khái quát mảng nhiều chiều Hạn chế dùng mảng Vì sao dùng mảng nhiều chiều?  Lưu trữ các phần tử theo hàng và theo cột để có thể lưu trữ dữ liệu đa dạng hơn  Cách lưu trữ mảng hai chiều: 0 1 2 0 1 2 3 hàng Cột Cách khai báo mảng hai chiều  Khai báo: Kiêu_du_lieu ten_mang[kt_hang][kt_cot];  Vd: int a[4][3]; 0 1 2 0 1 2 3 hàng Cột a[0][0] a[0][1] a[0][2] a[1][0] a[1][1] a[1][2] a[2][0] a[2][1] a[2][2] a[3][0] a[3][1] a[3][2] Cách truy xuất  Không thể tác động lên toàn bộ mảng cùng một lúc  Tại mỗi thời điểm chỉ tác động từng phần tử  Truy xuất 1 phần tử thông qua: tên mảng, chỉ số dòng, chỉ số cột. Vd a[i][j]: truy xuất phần tử ở hàng i, cột j  Khởi tạo  Vd: int a[2][2]={{0,1},{2,3}};  Nếu liệt kê không đầy đủ thì các phần tử còn lại bằng 0 Nhập, xuất giá trị cho mảng #include<iostream.h> main() { int i,j; int a[4][3]; for(i=0;i<4;i++) for(j=0;j<3;j++) cin>>a[i][j]; // Nhap gia tri cho mang for(i=0;i<4;i++) for(j=0;j<3;j++) cout<<a[i][j]<<" "; //Xuat gia tri return 0; } KHÁI QUÁT MẢNG NHIỀU CHIỀU  Để biểu diễn một dãy số dùng mảng một chiều  Để biểu diễn bảng giá trị dùng mảng hai chiều  Để biểu diễn khối các giá trị, dùng mảng 3 chiều.  Vd: khai báo mảng ba chiều  int a[2][3][3];  Cách truy xuất mảng nhiều chiều cũng như mảng hai chiều HẠN CHẾ DÙNG MẢNG  Phải xác định kích thước của mảng ngay từ lúc khai báo.  Kích thước bộ nhớ dành cho mảng không thay đổi trong suốt chương trình  Kích thước khai báo phải lớn hơn hoặc bằng kích thước sử dụng.  Có thể không sử dụng hết vùng nhớ đã khai báo cho mảng  Khi truyền mảng cho hàm, cần truyền cả nội dung của mảng và kích thước của mảng CON TRỎ  Hạn chế của bộ nhớ tĩnh  Giới thiệu con trỏ  Khái quát về con trỏ  Khai báo con trỏ  Khởi tạo và hủy con trỏ  Truy xuất vùng nhớ và giá trị lưu trong vùng nhớ  Ứng dụng con trỏ cho mảng một chiều  Tóm tắt HẠN CHẾ CỦA BỘ NHỚ TĨNH  Dữ liệu phải lưu vào nhớ đã được khai báo trước.  Khi khai báo sẽ dành hẳn 1 vùng nhớ tương ứng.  Trong quá trình tính toán, dữ liệu ít hơn dự kiến thì không thể yêu cầu chương trình cắt bớt.  Nếu dữ liệu nhiều hơn dự kiến thì không thể yêu cầu chương trình tăng thêm vùng nhớ KHÁI QUÁT VỀ CON TRỎ  Để khắc phục hạn chế của bộ nhớ tĩnh ta dùng bộ nhớ động  Bộ nhớ động: có thể yêu cầu máy tính cấp 1 vùng nhớ khi cần và yêu cầu nó xóa đi khi không cần nữa  Con trỏ(biến con trỏ): là một loại biến dùng để truy xuất bộ nhớ động [...]...  Nếu con trỏ chỉ đến 1 ô nhớ: delete p; Nếu con trỏ là mảng: delete []p; TRUY XuẤT VÙNG NHỚ VÀ GIÁ TRỊ Xét ví dụ: int i=2; int *p; Truy xuất giá trị *p=i;//giá trị chứa trong i *p=2; Truy xuất địa chỉ p=&i// địa chỉ của i  ỨNG DỤNG CON TRỎ CHO MẢNG Khi khai báo mảng vd : int a[10]; thì a chính là con trỏ và trỏ đến vị trí ô nhớ đầu tiên của mảng tức là a=&a[0]  Ví dụ: int a[10] ; int *p; p=a;//p=&a[0];... dùng con trỏ thay thế hoàn toàn cho mảng GiỚI THIỆU VỀ CHUỖI KÝ TỰ  Khái quát chuỗi ký tự:   Tập hợp các ký tự được xếp liên tiếp nhau trong bộ nhớ và có ký hiệu đặc biệt kết thúc ở cuối (‘\n’) Có thể sử dụng mảng, con trỏ để lưu trữ chuỗi ký tự Khai báo chuỗi ký tự:   Chuỗi ký tự sử dụng mảng Chuỗi ký tự sử dụng con trỏ KHAI BÁO CHUỖI KÝ TỰ  Có hai cách:   Dùng mảng: char ten_mang[kich_thuoc];... cout . MẢNG NHIỀU CHIỀU Vì sao dùng mảng nhiều chiều? Cách khai báo mảng hai chiều Truy xuất mảng hai chiều Khái quát mảng nhiều chiều Hạn chế dùng mảng. dùng mảng 3 chiều.  Vd: khai báo mảng ba chiều  int a[2][3][3];  Cách truy xuất mảng nhiều chiều cũng như mảng hai chiều HẠN CHẾ DÙNG MẢNG  Phải xác

Ngày đăng: 09/11/2013, 05:15

Hình ảnh liên quan

 Để biểu diễn bảng giá trị dùng mảng hai - MẢNG NHIỀU CHIỀU

bi.

ểu diễn bảng giá trị dùng mảng hai Xem tại trang 6 của tài liệu.

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

Tài liệu liên quan