VC
VC
&&
BB
BB
Nội dung
1
Khái niệm
2
Khai báo
3
Truy xuất dữ liệu kiểu mảng
4
Một số bài toán trên mảng 2
chiều
NMLT Mảng hai chiều
1
VC
VC
&&
BB
BB
Ma Trận
0
1
… n1
0
0
m1
0
An
…
…
Am,n
… n1
n1
NMLT Mảng hai chiều
2
VC
VC
&&
BB
BB
Ma Trận
0
… n1
0
0
… n1
0
…
…
n1
n1
n1
dòng = cột
dòng > cột
dòng < cột
0
0
0
… n1
0
… n1
0
dòng + cột = n1
n1
dòng + cột > n1
…
n1
… n1
0
…
…
An
… n1
0
…
An
0
n1
dòng + cột < n1
NMLT Mảng hai chiều
3
VC
VC
&&
BB
BB
Khai báo kiểu mảng 2 chiều
Cú pháp
typedef <kiểu cơ sở> <tên kiểu>[<N1>][<N2>];
N1, N2: số lượng phần tử mỗi chiều
Ví dụ
typedef int MaTran[3][4];
0
1
2
3
0
Kiểu MaTran
1
2
NMLT Mảng hai chiều
4
VC
VC
&&
BB
BB
Khai báo biến mảng 2 chiều
Cú pháp
Tường minh
<kiểu cơ sở> <tên biến>[<N1>][<N2>];
Không tường minh (thông qua kiểu)
typedef <kiểu cơ sở> <tên kiểu>[<N1>][<N2>];
<tên kiểu> <tên biến>;
<tên kiểu> <tên biến 1>, <tên biến 2>;
NMLT Mảng hai chiều
5
VC
VC
&&
BB
BB
Hàm tìm Max
int TimMax(int a[][MAXC], int m, int n)
{
int i, j, max;
max = a[0][0];
for (i=0; i
for (j=0; j
if (a[i][j] > max)
max = a[i][j];
return max;
}
NMLT Mảng hai chiều
32
VC
VC
&&
BB
BB
Câu hỏi và bài tập
Nêu lợi ích của việc dùng mảng.
Nêu cách khai báo và khởi tạo giá trị cho biến
mảng một chiều, biến mảng hai chiều.
Nêu cách truyền tham số mảng cho hàm, cách gọi
hàm có tham số mảng.
Trình bày các thao tác cơ bản trên kiểu mảng (1
chiều và 2 chiều):
− Nhập/Xuất giá trị cho các phần tử mảng
− Thêm phần tử mới vào mảng
− Xóa một phần tử trong mảng thỏa tiêu chuẩn P nào
đó.
− Tìm kiếm trên mảng
− Sắp xếp mảng.
33