Mảng là một tập hợp tuần tự các phần tử có cùng kiểu dữ liệu và các phần tử được lưu trữ trong một dãy các ô nhớ liên tục trên bộ nhớ. Các phần tử của mảng được truy cập bằng cách sử dụng “chỉ số”. Mảng có kích thước n sẽ có chỉ số từ 0 tới n – 1.

Ví dụ, với n = 5, khi đó chỉ số mảng(tiếng anh là index) sẽ có giá trị từ 0 tới 4(nghĩa là =5-1) tương ứng với 5 phần tử. Các phần tử trong mảng được truy cập bằng cách sử dụng.

Khai báo mảng 1 chiều trong C /C++

Khai báo theo cú pháp sau:

kiểu  tên_mảng[kích thước];

Ví dụ:   int a[5];

Khởi tạo mảng 1 chiều trong C /C++

Khai báo kèm khởi tạo ví dụ:

int arr[5] = {4, 12, 7, 15, 9};

Khai báo sau đó khởi tạo, ví dụ:

int arr[5];
arr[0] = 4;
arr[1] = 12;

Các thao tác với mảng 1 chiều trong C/C++

Một thao tác đơn giản nhất và hay sử dụng nhất đó là việc duyệt qua tất cả các phần tử của mảng, ví dụ sau duyệt để in ra các phần tử của mảng:

#include <stdio.h>
 
int main()
{
    // Array declaration and initialization
    int arr[5] = {4, 12, 7, 15, 9};
    // Iterate over the array
    for(int i=0; i<5; i++)
    {
        // Print out each element in a new line
        printf("%d\n", arr[i]);
    }
    return 0;
}

Thao tác nhập mảng 1 chiều trong C/C++

Hàm này nhận vào các đối số là mảng kiểu nguyên a, và số lượng phần tử n. Hàm không trả về giá trị gì nên có kiểu là void.

void NhapMang(int a[], int n){
    for(int i = 0;i < n; ++i){
        printf("\nNhap phan tu a[%d] = ", i);
        scanf("%d", &a[i]);
    }
}

Thao tác xuất mảng 1 chiều trong C/ C++

Tương tự như hàm nhập, hàm XuatMang cũng nhận vào mảng kiểu nguyên a và số lượng phần tử n. Hàm có giá trị trả về là kiểu void.

void XuatMang(int a[], int n){
    for(int i = 0;i < n; ++i){
        printf("\nPhan tu a[%d] = %d", i, a[i]);
    }
}

Chương trình đầy đủ nhập và xuất mảng 1 chiều trong C/C++

#include <stdio.h>
 
const int MAX = 100;
 
 
void NhapMang(int a[], int n){
    for(int i = 0;i < n; ++i){
        printf("\nNhap phan tu a[%d] = ", i);
        scanf("%d", &a[i]);
    }
}
 
void XuatMang(int a[], int n){
    for(int i = 0;i < n; ++i){
        printf("\nPhan tu a[%d] = %d", i, a[i]);
    }
}
 
int main(){
    int arr[MAX];
    int n;
    printf("\nNhap so luong phan tu: ");
    do{
        scanf("%d", &n);
        if(n <= 0 || n > MAX){
            printf("\nNhap lai so luong phan tu: ");
        }
    }while(n <= 0 || n > MAX);
    printf("\n======NHAP MANG=====\n");
    NhapMang(arr, n);
    printf("\n======XUAT MANG=====\n");
    XuatMang(arr, n);    
}

By alaza7

Leave a Reply

Your email address will not be published. Required fields are marked *