Lập trình C++ B4: Mảng Dữ Liệu Trong C++
Chào mừng các bạn đến với chủ đề học lập trình c++.
Bài hôm nay chúng ta cùng tìm hiểu về mảng dữ liệu trong c++
Mảng trong C++ được sử dụng khi khai báo một nhóm các kiểu dữ liệu giống nhau.
Ví dụ bạn cần khai báo 10 biến kiểu nguyên.
Thay vì phải khai báo theo kiểu liệt kê từng biến : int a1, a2, a3;
Mảng được lựa chọn thay thế cho trường hợp này.
1. Kiến Thức Cơ Bản Về Mảng Trong C++
– Cấu trúc khai báo mảng như sau: tên kiểu dữ liệu tên mảng [số lượng]
Ví dụ : int array [5];
– Trong ví dụ trên, kích thước biến int là 4 byte. Như vậy vùng nhớ sẽ dành ra 5 ô nhớ liên tiếp, mỗi ô nhớ có size = 4 byte để cấp phát cho mảng array.
– Truy cập vào mảng người ta sử dụng chỉ số: a[0], a[1].
– Khai báo mảng có thể đi kèm khởi tạo giá trị ban đầu cho nó như sau:
Ví dụ :
float array [4] = {1.1, 2.2, 3.3, 4.4};
– Khai báo mảng mà có khởi tạo đi kèm, thì có thể không cần thêm số lượng mảng.
Trình biên dịch sẽ tự động gán số lượng phần tử mảng bằng số giá trị khởi tạo.
Ví dụ:
int array [] = {1, 2, 3} // mảng có 3 phần tử.
– Nếu khởi tạo mảng có 5 phần tử. Nhưng chỉ gán 4 giá trị ban đầu.Thì phần tử thứ 5 sẽ được gán giá trị mặc định của hệ thống.
– Thao tác dữ liệu với mảng, thông thường người ta sử dụng vòng lặp for khi số lượng mảng quá lớn.
– Chỉ số của mảng luôn chạy từ 0 đến n-1.
* Mảng Đa Chiều:
Thể hiện một tổ hợp số lượng các phần tử. Thông thường nó được áp dụng cho lập trình không gian đa chiều.
Trong đó một chiều cho x và một chiều cho y.
Ví dụ:
int Arrray2d[2][3];
Vậy câu hỏi đặt ra là : thứ tự truy nhập các phần tử sẽ như thế nào.
Ví dụ chúng ta có int Arrray2d[3][3], thì thứ tự các vùng nhớ từ đầu đến cuối sẽ tương ứng như sau:
– Khi duyệt mảng 2 chiều phải sử dụng 2 vòng for, vòng ngoài cho hàng , vòng trong cho cột.
– Có thể sử dụng mảng làm một đối số cho hàm.
Ví dụ : void process (int arg[]);
*Phạm vi sử dụng:
Về cơ bản, mảng chỉ được sử dụng trong phạm vi nghiên cứu, bài tập, và các dự án nhỏ mang tính demo.
Vì nó có nhiều hạn chế trong việc sử dụng vùng nhớ.
Trong các dự án lớn, mảng khá ít được sử dụng.
2.Thực hành.
Viết một chương trình khai báo một mảng dữ liệu 5 phần tử kiểu số nguyên.
Nhập vào dữ liệu cho 5 phần tử
Tìm giá trị lớn nhất, nhỏ nhất của mảng.
// phattrienphanmem123az.com #include <iostream> #include <conio.h> int main() { int a[5]; std::cout << "Input array." << std::endl; for (int i = 0; i < 5; i++) { std::cout << "a[" << i << "] = "; std::cin >> a[i]; } // Check min, max int minVal = a[0]; int maxVal = a[0]; for (int i = 0; i < 5; i++) { if (minVal > a[i]) { minVal = a[i]; } if (maxVal < a[i]) { maxVal = a[i]; } } std::cout << "max = " << maxVal << std::endl; std::cout << "min = " << minVal << std::endl; _getch(); return 0; }
Output:
Ok.