Untitled
unknown
c_cpp
a year ago
1.7 kB
6
Indexable
#include <stdio.h> #include <stdlib.h> #include <windows.h> #include <time.h> // 2) отсортировать по возрастанию все элементы массива, находящиеся после первого нечётного элемента // отработать ситуацию если нечётных элементов нет или первый нечётный элемент находится в конце массива // -8 -6 4 -10 11 {-12 -17 26 13} // -8 -6 4 -10 11 -17 -12 13 26 void Swap( int *a, int *b ) { // указатель на int int tmp = *a; // * - операция разыменования *a = *b; *b = tmp; } void BubbleSort( int *arr, int size ) { int i, j; for( i = 0; i < size - 1; ++i ) for( j = 0; j < size - i - 1; ++j ) if( arr[ j ] < arr[ j + 1 ] ) Swap( &arr[ j ], &arr[ j + 1 ] ); } int main() { srand(time(NULL)); SetConsoleCP( 1251 ); SetConsoleOutputCP( 1251 ); int size; scanf("%d", &size); int* arr = ( int* )malloc(size * sizeof(int)); if( arr == NULL ){ // проверяем успешность выделения памяти puts( "Ошибка выделения памяти" ); return 1; } int i; for ( i = 0; i < size; ++i ) arr[i] = rand() % 101 - 50; puts(""); for (i = 0; i < size; ++i) printf("%d ", arr[i]); puts(""); for (i = 0; i < size; ++i) printf("%d ", arr[i]); for (i = 0; i < size; ++i){ if (arr[i] % 2 != 0) BubbleSort(arr, size); } free(arr); return 0; }
Editor is loading...
Leave a Comment