Xin chào mọi người!
Ngày trước mình còn nhớ khi mới vào học lập trình, thầy có giao cho mình 1 bài tập “Nhập vào n số và tính tổng n số đó”. Lúc ấy mình cũng chả biết “n số” mà thầy giao là cái quái gì nữa, nên mình viết chương trình và khai báo 1 lượt … 18 biến (tất nhiên là ông thầy cho mình đi tàu bay miễn phí rồi, hic). Lúc ấy mình có biết mảng là gì đâu?
Trở lại vấn đề, mảng là 1 khái niệm quan trọng trong lập trình. Bất kỳ ngôn ngữ nào cũng đều có khái niệm mảng, Và hôm nay mình xin trình bày về Mảng trong C++

1. Khái niệm

Mảng là 1 dãy các phần tử cùng kiểu. Các kiểu có thể là những kiểu định nghĩa sẵn như int, long,… cũng có thể là những kiểu ta định nghĩa (struct, class – mình sẽ nói ở bài sau :D) và kiểu con trỏ.
Cú pháp khai báo 1 mảng tĩnh:
<kiểu dữ liệu> <tên mảng>[<số phần tử>] = {<các giá trị khởi tạo>};
Lưu ý:
  • <kiểu dữ liệu> của mảng chính là kiểu dữ liệu của các phần tử trong mảng.
  • Khi khai báo, chương trình sẽ tìm 1 vùng nhớ liên tiếp trong RAM để cấp phát cho mảng.
  • <số phần tử> phải là một hằng số.
Ví dụ:
Mã nguồn:
1
2
3
int myArray[5]; // Khai báo mảng tĩnh 5 phần tử
// Khai báo mảng tĩnh 6 phần tử và gán giá trị khởi tạo cho 4 phần tử đầu
int myArray2[6] = { 1, 2, 3, 4 };

2. Cách sử dụng

Khi khái báo mảng xong, ta có thể truy cập tới từng phần tử của mảng thông qua chỉ mục (index). Chỉ mục bắt đầu từ 0 (tức là nếu ta cón phần tử, thì phần tử cuối cùng của mảng là n – 1).
Ví dụ:
Mã nguồn:
1
2
int myArray[5] = { 1, 2, 3, 4, 5 };
cout << myArray[2]; // = 3
Thông thường, ta duyệt toàn bộ các phần tử của mảng bằng 1 vòng lặp
Mã nguồn:
1
2
3
4
5
6
7
8
9
10
11
12
int myArray[5] = { 1, 2, 3, 4, 5 };
for (int i = 0; i < 5; i++)
{
  cout << "Phan tu thu " << i << ": " << myArray[i] << endl;
}
 
// Output
// Phan tu thu 0: 1
// Phan tu thu 1: 2
// Phan tu thu 2: 3
// Phan tu thu 3: 4
// Phan tu thu 4: 5

3. Mảng nhiều chiều

Nghe có vẻ phức tạp hơn nhỉ, ta cùng xét mảng 2 chiều trước nhé!
Mảng 2 chiều bản chất là mảng của các mảng 1 chiều. Hình vẽ sau đây sẽ thể hiện rõ về mảng 2 chiều:
Như các bạn thấy, hình trên là 1 mảng 1 chiều có 4 phần tử, mỗi phần tử lại là 1 mảng 1 chiều khác có 3 phần tử. Thông thường ta sẽ viết nó dưới dạng ma trận:
                                    
Như vậy, ta có thể suy ra mảng nhiều chiều bản chất chỉ là mảng của các mảng 1 chiều, mỗi mảng 1 chiều lại là 1 mảng 1 chiều khác, vv,… (có nhiều bạn bị “hack não” ở mảng 2 chiều :v)
Trên đây là bài viết về Mảng – Phần 1. Cảm ơn các bạn đã theo dõi! Xin hẹn gặp lại ở các bài sau nhé!
Axact

Administrator:

Xin chào, tôi là Nguyễn Quý Quang Huy. Tôi 14 tuổi và sinh sống tại Hoài Đức, Hà Nội. Tôi lập ra Rinne-IT Blog này nhằm chia sẻ những kiến thức mình có và những bài viết hay trên mạng do tôi tổng hợp. Blog đang trong giai đoạn phát triển nên nếu có lỗi mong các bạn bỏ qua. Tôi luôn chào đón những ý kiến phát triển từ từ các bạn. Giờ thì hãy khám phá blog của tôi nào ^_^

Bình Luận:

0 bình luận: