Tải bản đầy đủ (.pdf) (17 trang)

[Bài giảng Kỹ thuật lập trình] - Chương 6: Kiểu mảng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (545.7 KB, 17 trang )

KỸ THUẬT LẬP TRÌNH
❖ Trường Đại học Kinh tế Cơng nghiệp Long An
❖ Khoa Công nghệ
❖ Giảng viên: ThS. Ngô Văn Linh




CHƯƠNG 6: KIỂU MẢNG
❑ Gồm các nội dung chính:

Khoa Cơng Nghệ

6.1. Giới thiệu
6.2. Mảng 1 chiều
6.3. Mảng đa chiều

2


6.1. GIỚI THIỆU

Khoa Công Nghệ

3

❑ Mảng là một tập hợp các phần tử cố định có cùng một kiểu dữ liệu.
❖Phân loại
➢Mảng một chiều
➢Mảng nhiều chiều



CHƯƠNG 6: KIỂU MẢNG
❑ Gồm các nội dung chính:

Khoa Cơng Nghệ

6.1. Giới thiệu
6.2. Mảng 1 chiều
6.3. Mảng đa chiều

4


6.2. MẢNG 1 CHIỀU

Khoa Công Nghệ

5

❑ Khái niệm
❖Mảng 1 chiều là kiểu dữ liệu có cấu trúc, gồm nhiều phần tử có cùng kiểu
dữ liệu được lưu trữ liên tiếp ở cùng trong bộ nhớ và có chung 1 tên gọi,
các phần tử trong mảng phân biệt với nhau qua chỉ số.


6.2. MẢNG 1 CHIỀU

Khoa Công Nghệ

❑ Khai báo

❖Cú pháp
<tên kiểu dữ liệu>[ ] <tên mảng>;
<tên mảng> = new <tên kiểu dữ liệu>[<số lượng phần tử>];
<tên kiểu dữ liệu> [ ] <tên mảng> = {<giá trị>, <giá trị>,…};
❖Ví dụ
Value
0
0
0
0
int [ ] diem = new int[5];
Index

0

0

1

2

3

4

Value

4.5

6


7

10

3.5

Index

0

1

2

3

4

float [ ] diemthi = {4.5, 6, 7, 10, 3.5};

6


6.2. MẢNG 1 CHIỀU
❑ Truy cập dữ liệu
❖Truy xuất thông qua tên biến mảng theo sau là chỉ số nằm trong cặp dấu
ngoặc vuông.
Khoa Công Nghệ


7

int[ ] a = {126, 32, 230, 21, 200};
a[3] = 5;
a[4] = a[1] + a[0];

Thuộc tính <tên mảng>.Length cho
biết số lượng phần tử mảng


6.2. MẢNG 1 CHIỀU
❑ Ví dụ

Khoa Cơng Nghệ

8


CHƯƠNG 6: KIỂU MẢNG
❑ Gồm các nội dung chính:

Khoa Cơng Nghệ

6.1. Giới thiệu
6.2. Mảng 1 chiều
6.3. Mảng đa chiều

9



6.3. MẢNG ĐA CHIỀU

Khoa Công Nghệ

10

❑ Mảng đa chiều là mảng của các mảng, trong đó mảng 2 chiều là thường sử
dụng nhất
❖Phân loại
➢Mảng đa chiều có cùng kích thước
➢Mảng đa chiều khơng cùng kích thước
Mảng 5 x 4


6.3. MẢNG ĐA CHIỀU

Dịng

Khoa Cơng Nghệ

❑ Mảng 2 chiều có cùng kích thước
❖Khai báo
<kiểu dữ liệu> [,] <tên mảng>;
<kiểu dữ liệu>[,] <tên mảng> = {{<giá trị>,…}, {<giá trị>,…}};
❖Ví dụ
int[,] a = new int[4, 5];
float[,] b = {
{1, 2, 3},
Cột
{4, 7, 3},

1
0
1
2
3
4
{6, 9, 2},
4
0
0
0
0
0
0
{7, 8, 0}
6
1
0
0
0
0
0
};
7
2
0
0
0
5
0

3

11

0

0

0

0

0

Truy xuất phần tử mảng: a[2, 3] = 5

2

3

7

3

9

2

8


0


6.3. MẢNG ĐA CHIỀU
❑ Mảng 2 chiều có cùng kích thước

Khoa Công Nghệ

12


6.3. MẢNG ĐA CHIỀU
❑ Mảng 2 chiều khơng cùng kích thước
❖Khai báo
Khoa Công Nghệ

13

<kiểu dữ liệu>[ ][ ] <tên mảng> = new <kiểu dữ liệu>[<kích thước hàng>] [ ];
<tên mảng>[<chỉ số>] = new <kiểu dữ liệu>[<số phần tử mỗi hàng>]

❖Ví dụ
int [ ][ ] a = new int[4][ ];
a[0] = new int[4];
a[1] = new int[1];
a[2] = new int[3];
a[3] = new int[2];


6.3. MẢNG ĐA CHIỀU

❑ Mảng 2 chiều khơng cùng kích thước

Khoa Công Nghệ

14


CÂU HỎI ƠN TẬP

Khoa Cơng Nghệ

15

1) Mảng được phân loại như thế nào?
2) Cách khai báo, khởi tạo, truy xuất, gán giá trị trong mảng 1 chiều?
3) Cách khai báo, khởi tạo, truy xuất, gán giá trị trong mảng 2 chiều cùng kích
thước?
4) Cách khai báo, khởi tạo, truy xuất, gán giá trị trong mảng 2 chiều khơng cùng
kích thước?


BÀI TẬP CHƯƠNG 6

Khoa Cơng Nghệ

16

1) Viết chương trình nhập vào mảng 1 chiều các số nguyên, hãy xuất ra màn
hình:
✓ Phần tử lớn nhất của mảng

✓ Phần tử nhỏ nhất của mảng
✓ Tính tổng các phần tử dương trong mảng
2) Viết chương trình nhập vào dãy n số thực. Tính tổng dãy, trung bình dãy, tổng
các số âm, dương và tổng các số ở vị trí chẵn, vị trí lẻ trong dãy. Tìm phần tử
gần số trung bình nhất của dãy?
3) Tìm và chỉ ra vị trí xuất hiện đầu tiên và cuối cùng của phần tử x trong mảng?
4) Nhập vào dãy n số nguyên, in ra các số nguyên tố trong dãy?
5) Viết chương trình nhập vào mảng rồi in đảo ngược mảng
vừa nhập?


BÀI TẬP CHƯƠNG 6

Khoa Cơng Nghệ

17

6) Viết chương trình nhập vào một ma trận (mảng 2 chiều) các số nguyên gồm
m hang, n cột. In ma trận đó lên màn hình. Nhập một số ngun khác vào và
xét xem có phần tử nào của ma trận trùng với số nay khơng? Ở vị trí nào? Có
bao nhiêu phần tử?
7) Viết chương trình để chuyển đổi vị trí từ dịng thành cột của một ma trận (ma
trận chuyển vị) cấp m x n
8) Viết chương trình nhập vào hai ma trận A và B có cấp m x n. In 2 ma trận lên
màn hình. Tính tổng hai ma trận A và B là ma trận C theo công thức:
𝐶𝑖𝑗 = 𝐴𝑖𝑗 + 𝐵𝑖𝑗
9) Viết chương trình nhập vào ma trận khơng cùng kích thước, đếm và in ra các
số ngun tố trong ma trận?
10)Viết chương trình nhập vào ma trận vng, tính tổng các
phần tử ở phía trên đường chéo chính?




×