Lỗi Run-Time Check Failure #2 - Stack around the variable 'a' was corrupted. occurred

Run-Time Check Failure #2 - Stack around the variable ‘a’ was corrupted. occurred
cho e hỏi lỗi này là gì và sửa như nào
code của e

#include <stdio.h>

void bubbleSort(int a[], int n);
void xuat(int a[], int n);
void chenx(int a[], int n, int x);

int main() {
	int a[6] = { 1,5,2,3,9,3 };
	int n = 6;
	printf("\n");
	xuat(a, n);
	bubbleSort(a, n);
	printf("\n");
	xuat(a, n);
	int x = 4;
	chenx(a, n, x);
	return 0;
}

void swap(int* a, int* b) {
	int tg = *a;
	*a = *b;
	*b = tg;
}

void xuat(int a[], int n) {
	for (int i = 0;i < n;i++)
		printf("%5d", a[i]);
}

void bubbleSort(int a[], int n) {
	for (int i = 0;i < n;i++) {
		for (int j = n - 1;j > i;j--)
			if (a[j] < a[i])
				swap(&a[j], &a[i]);
	}
}

void chenx(int a[],int n, int x) {
	int c;
	for (int i = 0;i < n;i++) {
		if (a[i] < x)
			c = i + 1;
	}
	for (int i = n;i > c;i--) {
		a[i] = a[i - 1];
	}
	a[c] = x;
	printf("\n");
	xuat(a, n + 1);
}

Mảng có 6 slot, đủ 6 slot rồi sao chèn được nữa bạn :smiley:

3 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?