Hàm void XoaPhanTu(int arr[], int &n, int index) dưới đây nhận int arr[] là mảng cần xóa phần tử, int n là số lượng phần tử của mảng, int index là vị trí cần được xóa.

#include <stdio.h>
void XoaPhanTu(int arr[], int &n, int index){
    //neu dia chi xoa nho hon 0 thi xoa phan tu dau tien
    if(index < 0){
        index = 0;
    }
    //neu dia chi xoa lon hon hoac bang n thi xoa phan tu cuoi cung
    if(index >= n){
        index = n - 1;
    }
    // Dich chuyen mang ve ben trai tu vi tri xoa
    for(int i = index; i < n - 1; i++){
        arr[i] = arr[i+1];
    }
    //sau khi xoa giam so luong phan tu mang
    n--;
}
int main(){
    //so luong phan tu mang
    int n = 6;
    //khai bao mang
    int arr[n] = {1,2,3,4,5,6};
    //vi tri can xoa trong mang
    int index = 3;
    //hien thi mang ban dau
    printf("MANG BAN DAU\n");
    for(int i = 0; i < n ; i++){
        printf("%d \t",arr[i]);
    }
    
    //goi ham xoa phan tu truyen vao mang can xoa, so luong phan tu va dia chi can xoa
    XoaPhanTu(arr,n,index);
    //hien thi mang sau khi xoa tai vi tri index = 3
    printf("\nMANG SAU KHI XOA TAI ARR[%d]\n", index);
    for(int i = 0; i < n; i++){
        printf("%d \t",arr[i]);
    }
}

 

 

By alaza7

Leave a Reply

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