问题遇到的现象和发生背景
报错且结果出错
问题相关代码,请勿粘贴截图
#include<stdio.h>
void bubble_sort(int arr[],int sz)
{
int i = 0;
int tmp = 0;
for (i = 0;i < sz-1;i++)
{
int j = 0;
for (j = 0;j <sz-1-i ;j++);
{
if (arr[j] > arr[j + 1])
{
int tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
}
int main()
{
int arr[] = { 9,8,7,6,5,4,3,2,1,0 };
int a = 0;
int sz = sizeof(arr) / sizeof(arr[0]);
bubble_sort(arr,sz);
for (a = 0;a < sz;a++)
{
printf("%d ", arr[a]);
}
return 0;
}
运行结果及报错内容
打印出来的值:“9 -858993460 8 7 6 5 4 3 2 1”
我的解答思路和尝试过的方法
在bubble_sort函数内,第一次进入j就从0变为了9.
我想要达到的结果
想达到对数组进行升序排序的结果