Mảng được sử dụng rất phổ biến trong những bài toán thực tế, chẳng hạn như lưu danh sách học sinh, danh sách sản phẩm...

1/ Khai báo

Cú pháp khai báo một mảng như sau:

type name[length];

Trong đó:

  • type: kiểu dữ liệu của các phần tử trong mảng như string, int, boolean... các em có thể xem lại ở bài "Các kiểu dữ liệu trong C++"
  • name: tên của mảng - là một biến nên cách đặt tên giống như các em đã học ở bài "Biến trong C++"
  • length: số phần tử của mảng, hay còn gọi là chiều dài của mảng

Ví dụ 1:

string hocSinh[4];
hocSinh = { "Cam", "Quyt", "Buoi", "Chuoi" };

Như ví dụ trên thì mỗi phần tử có type (kiểu dữ liệu) là string, name (tên của mảng) là hocSinh, length (số phần tử của mảng) là 4 (Cam, Quyt, Buoi, Chuoi)

Ví dụ 2, khai báo mảng với các phần tử kiểu int:

int myNum[3] = {10, 20, 30};

2/ Truy cập các phần tử trong mảng

Cú pháp truy cập, tương tự cách truy cập các phần tử trong chuỗi mà các em đã học

name[index];

Trong đó:

  • name: tên của mảng
  • index: số chỉ mục của phần tử, số chỉ mục của phần tử mảng tiếp theo = số chỉ mục của phần tử đứng liền kề ở trước + 1

Ví dụ 3:

string hocSinh[4];
hocSinh = { "Cam", "Quyt", "Buoi", "Chuoi" };
cout << hocSinh[0] << "/n";
out << hocSinh[1];

Kết quả:

Cam
Quyt

3/ Thay đổi giá trị phần tử mảng

Cú pháp:

name[index] = giá trị mới;

Ví dụ 4:

string hocSinh[4];
hocSinh = { "Cam", "Quyt", "Buoi", "Chuoi" };
cout << hocSinh[0] << "/n";
hocSinh[0] = "Dua";
cout << hocSinh[0];

Kết quả:

Cam
Dua

4/ Duyệt mảng

Bài toán: giả sử đã có danh sách 1000 học sinh, bây giờ các em hay in danh sách đó ra màn hình.

Cách thực hiện 1, gõ 1000 lần cout << name[index], ví dụ:

string hocSinh[1000];
hocSinh = { "Cam", "Quyt", "Buoi", "Chuoi", ..., "Phan tu 1000" };
cout << hocSinh[0] << "/n";
cout << hocSinh[1] << "/n";
cout << hocSinh[2] << "/n";
...
cout << hocSinh[999];

Cách thực hiện 2, duyệt mảng với vòng lặp for đã học, ví dụ:

#include <iostream>
#include <string>
using namespace std;

int main() {
  string hocSinh[1000];
  hocSinh = { "Cam", "Quyt", "Buoi", "Chuoi", ..., "Phan tu 1000" };
  for (int i = 0; i < 1000; i++) {
   cout << hocSinh[i] << "/n";
  }
  return 0;
}

Gợi ý:
 - Các em hãy dùng vòng lặp for để tạo mảng 1000 phần tử vì dòng 7 ở ví dụ trên là khai báo sai
 - Duyệt mảng với vòng lặp while