Khi xử lý một tập hợp lớn dữ liệu liên quan và các loại dữ liệu khác nhau, việc tổ chức và quản lý nó một cách hiệu quả là rất quan trọng. Trong lập trình C, sự kết hợp giữa mảng và cấu trúc, tức là mảng cấu trúc, cung cấp một công cụ mạnh mẽ để quản lý việc đó. Trong bài viết này, chúng ta sẽ thảo luận về khái niệm Mảng cấu trúc trong C.
Chúng ta nhắc lại:
Mảng là gì?
Mảng là một tập hợp đồng nhất các phần tử được lưu trữ trong một vị trí bộ nhớ liên tục. Kích thước của mảng là cố định và chúng ta có thể truy cập ngẫu nhiên các phần tử bằng chỉ mục của chúng.
Khai Báo Mảng :
Cú pháp :
Kiểu_Dữ_Liệu Tên_mảng[Số_Lượng_Phần_Tử];
Tham số:
Kiểu_Dữ_Liệu : Ví dụ int, char, double....
Số_Lượng_Phần_Tử: Còn gọi là kích thước mảng, ví dụ int a[100] là khai báo mảng chứa các số nguyên int tối đa 100 phần tử.
Cấu trúc là gì?
Cấu trúc là một trong những kiểu dữ liệu do người dùng định nghĩa trong C có thể chứa các phần tử thuộc các kiểu khác nhau làm thành viên của nó.
Khai Báo Cấu Trúc :
Cú pháp:
struct ten_struct{
data_type1 data_field1;
data_type2 data_field2;
....
data_typen data_fieldn;
};
Mảng cấu trúc
Mảng có các phần tử thuộc kiểu cấu trúc được gọi là mảng cấu trúc. Nói chung nó rất hữu ích khi chúng ta cần nhiều biến cấu trúc trong chương trình của mình.
Hình dung tình huống thực tế của việc cần có mảng cấu trúc:
Giả sử chúng ta có 50 nhân viên và chúng ta cần lưu trữ dữ liệu của 50 nhân viên. Vì vậy, để làm được điều đó, chúng ta cần xác định 50 biến thuộc loại struct Nhân viên và lưu trữ dữ liệu trong đó. Tuy nhiên, việc khai báo và xử lý 50 biến không phải là một việc dễ dàng. Hãy tưởng tượng một kịch bản lớn hơn, chẳng hạn như 1000 nhân viên, 10.000 nhân viên...
Ví dụ chúng ta giải quyết bằng cách tạo ra cấu trúc Nhân viên
struct NhanVien{
char hoten[50];
char email[50];
int maSoNhanVien;
};
Sau đó ta sẽ khai các biến
NhanVien1, NhanVien2, NhanVien3.....NhanVien50
Việc này sẽ rất mất thời gian và khó quản lý.
Để giải quyết vương mắc này, chúng ta có thể định nghĩa một mảng có kiểu dữ liệu là struct NhanVien để dễ quản lý.
Khai Báo Mảng Cấu Trúc :
Cú pháp : Kiểu_Dữ_Liệu Tên_mảng[Số_Lượng_Phần_Tử];
Ví dụ:
NhanVien mangNhanVien[50];
Khởi tạo mảng cấu trúc
Chúng ta có thể khởi tạo bằng nhiều cách, ví dụ:
struct Tên_cấu_trúc Tên_mảng [Số_Lượng_Phần_Tử] = {
{element1_value1, element1_value2, ....},
{element2_value1, element2_value2, ....},
......
......
};
Hoặc
struct Tên_cấu_trúc Tên_mảng [Số_Lượng_Phần_Tử] = {
element1_value1, element1_value2 ....,
element2_value1, element2_value2 .....
};
Ví dụ:
struct NhanVien thongTinNhanVien[50] = {
"Tran Van A", "tranvanA@email.com" ....,
"Le Van B", "levanB@email.com" .....
};
Không có nhận xét nào:
Đăng nhận xét