代码:
#include<stdio.h>
#define DataType int
#define N 8
void BubbleSort(DataType a[], int n)
{
int flag = 1;
int i, j;
DataType temp;
for (j = 1;j < n && flag == 1; i++)
{
flag = 0;
for (i = 1;i <= n - j; i++)
{
if ( a[i] > a[i + 1])
{
flag = 1;
temp = a[i];
a[i] = a[i + 1];
a[i + 1] = temp;
}
}
}
}
int main()
{
DataType a[N] = { 4,9,1,8,21,13,42,27 };
int i = 0;
BubbleSort(a, 8);
for (i = 0;i < 8;i++)
{
printf("%d", a[N]);
}
return 0;
}
```已经没有语序的错误了,但是最后说是a的栈堆被破坏,
问题显示:Run-Time Check Failure #2 - Stack around the variable 'a' was corrupted.
我不知道怎么改了。