#include #include #include #define SIZE 12 enum { SEED = 123}; int random_number(int n) { return rand() % n; } void init_array(int size, int a[], int max_random) { for (size_t i = 0;i= i ; j-- ) { if ( a[j] > a[j+1] ) { swap(&a[j], &a[j+1]); flag = 1; // поднять флаг если есть обмен } } i++; } while ( flag ); // выход при flag = 0 } // Сортировка выбором void choose_sort_array(int a[], int size) { int nMin=0; for(int i = 0; i < size-1 ; i++ ) { nMin = i; for (int j = i+1; j < size; j++) { //~ printf("i=%d,j=%d,a[j]=%d,a[nMin]=%d\n",i,j,a[j],a[nMin]); if( a[j] < a[nMin] ) { nMin = j; printf("i=%d,j=%d,a[j]=%d,a[nMin]=%d\n",i,j,a[j],a[nMin]); } } if(nMin != i) { swap(&a[i], &a[nMin]); printf("i=%d,nMin=%d,a[i]=%d,a[nMin]=%d\n",i,nMin,a[i],a[nMin]); } } } int main(void) { int arr[SIZE]; //~ Input(arr,SIZE); init_array(SIZE, arr, 100); Print(arr,SIZE); shift_array_left(arr,SIZE); Print(arr,SIZE); revers_array(arr,SIZE); Print(arr,SIZE); buble_sort_array(arr,SIZE); Print(arr,SIZE); choose_sort_array(arr,SIZE); Print(arr,SIZE); return 0; }