Cách xóa này sẽ thực hiện dịch chuyển lùi các phần tử từ sau vị trị cần xóa sang phía bên trái để chèn qua phần tử cần xóa. Sau đó thực hiện giảm số lượng phần tử mảng đi 1 đơn vị.
Ví dụ có mảng: int arr[6] = {1,2,3,4,5,6};
Sau khi xóa phần tử arr[2] đi thì mảng còn lại arr[5]={1,2,4,5,6}
Chương trình xóa phần tử trong mảng trong C/C++
#include <stdio.h> 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]); } // 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--; //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]); } }