冒泡排序内部为啥不能用J--呢?当i=0,j一样循环8次啊

冒泡排序内部为啥不能用J--呢?当i=0,j一样循环8次啊

#include
using namespace std;
int main()
{
    int arr[9]={1,5,6,7,2,3,9,4,8};
    for (int i = 0; i < 9; i++)
    {
        for (int j = 9-1-i; j >0; j--)
        {
            if (arr[j] >arr[j+1])                        
            {
                int temp = arr[j];
                arr[j] = arr[j+1];
                arr[j+1] = temp;
            }
        }
  }
    for (int i = 0; i < 9; i++)
    {
        cout << arr[i];
    }
    return 0;
 }

可以啊,但你12到14行应该进行arr[j]和arr[j-1]进行比较和交换啊。
否则当i=0时,j=8,这是arr[j+1]是会越界的啊