em lập trình như thế này khi chạy thì bị mất phần tử cuối là tại sao và sửa như thế nào vậy
#include<stdio.h>
#include<conio.h>
#include<math.h>
void nhapmang(int a[], int &n)
{
printf("nhap so phan tu :" );
scanf("%d",&n);
for(int i=0;i<n;i++)
{
printf(" phan tu thu %d :",i);
scanf("%d",&a[i]);
}
}
int xuatmang(int a[],int n)
{
printf("mang da nhap \n");
for(int i=0;i<n;i++)
{
printf(" %4d ",a[i]);
}
}
int xoasoX(int a[], int *n, int x)
{
int i, j;
int res = -1;
for(i = *n-1; i >= 0; i--)
{
if(a[i] == x)
{
for(j = i; j < *n-1; j++)
{
a[j] = a[j+1];
}
(*n)--;
res = 0;
}
}
return res;
}
int main()
{
int a[100],n,k,x;
nhapmang(a,n);
xuatmang(a,n);
printf("\nphan tu muon xoa la :");
scanf("%d",&x);
xoasoX(a,&n,x);
xuatmang(a,n);
return 0;
}