logo
ООП для Заоч / Пинчук Лозовская Программир на С

Int flag;

printf("Кількість елементів масиву = "); scanf("%d",&N);

printf("Введіть елементи масиву: \n");

for(k=0; k<N; k++) scanf("%d",&a[k]);

printf("Сортування ... \n");

do { flag=0; // скинути прапор перестановок

for (k=0; k<(N-1); k++)

{ if ( a[k]>a[k+1] ) { swp(a[k],a[k+1]);

flag=1; // встановити прапор }

}

for (k=0; k<N; k++) printf("%d ",a[k]);

printf("\n");

} while (flag==1);

// повторювати цикл поки є перестановки

printf("Масив відсортований.\n");

}

Протокол роботи програми:

Rількість елементів масиву = 6

Введіть елементи масиву:

34 76 23 98 35 40

Сортування

34 23 76 35 40 98

23 34 35 40 76 98

23 34 35 40 76 98

Масив відсортований.

Час виконання алгоритму сортування буде найбільшим, якщо у наданому масиві мінімальний елемент буде останнім. Процес сортування масиву з попереднього прикладу буде відбуватися таким чином:

34 76 23 98 35 12

34 23 76 35 12 98

23 34 35 12 76 98

23 34 12 35 76 98

23 12 34 35 76 98

12 23 34 35 76 98