Сортировка выбором - C (СИ) (76186)
Формулировка задачи:
Вот код. Нужно лишь поменять так, чтобы сортировало четные элементы массива (где нужно увеличить на 2?).
# include <stdio.h> int main() { int m[5]; int k, pos, i, j; for(i=0; i<5; i++) { printf("Print mas[%d]:", i); scanf("%d", &m[i]); } for(i=0; i<5; i++) { k=m[i]; pos=i; for(j=pos+1; j<5; j++) { if(m[j]<k) { k=m[j]; pos=j; } } m[pos]=m[i]; m[i]=k; } for(i=0; i<5; i++) { printf(">>mas[%d]=%d\n", i, m[i]); } return 0; }
Решение задачи: «Сортировка выбором»
textual
Листинг программы
#include <stdio.h> #include <locale.h> #define n 5 int main(){ setlocale(LC_ALL, "rus"); int a[n]; //массив а размера n int i, j; // i, j счетчики циклов int buf; //buf буферная переменная //Заполняем массив printf("Введите элементы массива:\n"); for(i=0; i<n; i++){ scanf("%d", &a[i]); } for(i = 0; i < n; i+=2) { for(j = i+2; j < n; j+=2) if(a[j] < a[i]){ buf=a[i]; a[i]=a[j]; a[j]=buf; } } //Выведем массив for(i=0; i<n; i++) printf("%d ", a[i]); printf("\n"); return 0; }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Определяем размер массива n
- Устанавливаем русскую локаль для вывода
- Создаем массив a размера n и две переменные i, j для работы с циклами
- Используем цикл для заполнения массива a значениями, которые вводит пользователь
- Используем два вложенных цикла для сортировки массива выбором (начиная с i=0, потом i=2,4,6,8...)
- Выводим отсортированный массив на экран
- Возвращаем 0, чтобы указать, что программа успешно завершилась
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д