Mảng là gì
Mảng là một tập gồm nhiều phần tử có cùng kiểu dữ liệu. Ví dụ mảng kiểu int sẽ gồm nhiều phần tử có cùng kiểu int.
Mảng được sử dụng trong các trường hợp như: có nhiều phần tử; các phần tử có cùng đặc điểm. Lấy ví dụ chương trình quản lý danh sách sinh viên => sử dụng mảng sinh viên, …
Cú pháp khai báo mảng
Kiểu_Dữ_Liệu Tên_Mảng[Số_Lượng_Phần_Tử];
Ví dụ khai báo mảng để giải quyết yêu cầu của tình huống đã đặt ra ở đầu bài viết như sau
int a[10];
Giải thích:
int là kiểu dữ liệu; a là tên mảng và 10 là số lượng phần tử trong mảng, chính là số lượng số nguyên cần tính toán.
Tên mảng đặt theo qui tắc
Không chứa khoảng trắng; Không chứa kí tự đặc biệt; Không trùng với từ khoá và Sử dụng tên gợi nhớ.
Truy cập các phần tử của mảng
Thông qua chỉ số; Chỉ số trong lập trình C sẽ bắt đầu từ 0, nghĩa là phần tử thứ nhất có chỉ số là 0, phần tử thứ hai có chỉ số là 1 và cứ như thế cho đến phần tử thứ n sẽ có chỉ số là n-1.
Cú pháp truy cập phần tử của mảng
Tên_Mảng[Chỉ_Số];
Ví dụ truy cập các phần tử của mảng tên a
a[0] => phần tử 1
a[1] => phần tử 2
a[2] => phần tử 3
...
a[n-1] => phần tử n
Các thao tác thường gặp trên mảng
Nhập mảng
Vì đặc điểm các phần tử của mảng có cùng kiểu dữ liệu và truy cập các phần tử của mảng thông qua chỉ số nên đối với xử lý mảng chúng ta LUÔN LUÔN sử dụng vòng lặp. Và cụ thể là vòng lặp for vì đã biết trước số lượng phần tử mảng cũng đồng nghĩa với việc biết trước số lần lặp.
for(int i = 0; i < 10; i++) {
scanf("%d", &a[i]);
}
Giải thích
i = 0 => scanf(“%d”, &a[0]);
=> Nhập giá trị cho phần tử thứ nhất
i = 1 => scanf(“%d”, &a[1]);
=> Nhập giá trị cho phần tử thứ hai
… => Tương tự như vậy cho các phần tử khác
i = 9 => scanf(“%d”, &a[9]);
=> Nhập giá trị cho phần tử thứ mười
Hiển thị mảng
for (int i = 0; i < 10; i++) {
printf("%d", a[i]);
}
Tính tổng các phần tử của mảng
int tong = 0;
for (int i = 0; i < 10; i++) {
tong = tong + a[i];
}
printf("Tong cac phan tu cua mang la %d", tong);
Tìm kiếm trên mảng
int x;
printf("Nhap phan tu can tim x = ");
scanf("%d", &x);
for(int i = 0; i < 10; i++) {
if(x == a[i]) {
printf("%d co trong mang", x);
break;
}
Giải thích
Nếu x có trong mảng tức x = a[i] thì hiển thị thông báo x có trong mảng và đồng thời kết thúc quá trình tìm kiếm bằng lệnh break. Lệnh break được sử dụng để kết thúc vòng lặp.
Bài tiếp theo