你这个数组越界了!注意
int a[10]; //一共10个元素,从a[0]到a[9]
当j=10时,数组越界。
这段代码看样子是想实现“冒泡排序”(又称“起泡排序”),但这个代码是错误的,除了数组越界,而且循环方向也错了。
正确的代码参考如下:
void bubble_sort(int a[], int n)
{
int i, j, temp;
for (j = 0; j < n - 1; j++)
for (i = 0; i < n - 1 - j; i++)
{
if(a[i] > a[i + 1])
{
temp = a[i];
a[i] = a[i + 1];
a[i + 1] = temp;
}
}
}
练习算法的代码,建议将写成一个函数,用N等变量来表示元素个数,而不要用具体数字。