Прежде всего, вы печатаете значение i-го элемента в массиве, который еще не был инициализирован.Поэтому я предлагаю вам поменять местами функцию printf с входным считывателем в первом цикле for в функции main .
Как я вижу во втором цикле forтам, где происходит сортировка, вы меняете самое высокое значение в массиве на последний элемент в массиве.Это должно привести к тому, что самое высокое значение будет в начале массива.Я предлагаю использовать следующую реализацию:
void bubblesort(int array[LENGTH])
{
int i, j;
for (i = 1; i < LENGTH; i++)
{
for (j = 1; j < LENGTH; j++)
{
if (array[j - 1] > array[j])
{
int exchange = array[j - 1];
array[j - 1] = arra[j];
array[j] = exchange;
}
}
}
В вашем коде n на одно значение выше, чем самый высокий индекс, поскольку последний индекс равен n-1.Таким образом, индекс i в начале равен 0, что означает, что первое значение m выходит за пределы.Поэтому вычтите 1 из m .