bool XuatHien(int *a, int n, int x)
{
for (int i = 0; i < n; i++)
{
if (a[i] == x)
{
return true;
}
}
return false;
}
void TronMang(int *a, int n, int *b, int m, int *c, int &l)
{
int i = 0, j = 0;
l = 0;
c[l++] = a[i];
i++;
while (i < n && j < m)
{
if (!XuatHien(c,l,a[i]))
{
c = (int*)realloc(c, (l + 1) * sizeof(int));
c[l++] = a[i];
}
if (!XuatHien(c, l, b[j]))
{
c = (int*)realloc(c, (l + 1) * sizeof(int));
c[l++] = b[j];
}
i++;
j++;
}
while (i < n && !XuatHien(c,l,a[i]))
{
c = (int*)realloc(c, (l + 1) * sizeof(int));
c[l++] = a[i];
i++;
}
while (j < m && !XuatHien(c, l, b[j]))
{
c = (int*)realloc(c, (l + 1) * sizeof(int));
c[l++] = b[j];
j++;
}
}
int main()
{
int *a, n;
int *b, m;
int *c;
int l;
printf("nhap so phan tu cua mang\n");
scanf_s("%d", &n);
a = new int[n];
NhapMang(a, n);
printf("nhap so phan tu cua mang\n");
scanf_s("%d", &m);
b = new int[m];
NhapMang(b, m);
c = (int*)malloc(1 * sizeof(int));
TronMang(a, n, b, m, c, l);
XuatMang(c, l);
delete[] a;
delete[] b;
delete[] c;
_getch();
return 0;
}
Chương trình sau khi chạy xong báo lỗi has triggered breakpoint. F10 chạy bình thường, xuất ,mảng đúng luôn chỉ khi tới chỗ _getch() thì không chạy được nửa. Bác nào có tâm, giúp em với :(((