Сортировка выбором - 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;
}

Объяснение кода листинга программы

  1. Включаем необходимые заголовочные файлы
  2. Определяем размер массива n
  3. Устанавливаем русскую локаль для вывода
  4. Создаем массив a размера n и две переменные i, j для работы с циклами
  5. Используем цикл для заполнения массива a значениями, которые вводит пользователь
  6. Используем два вложенных цикла для сортировки массива выбором (начиная с i=0, потом i=2,4,6,8...)
  7. Выводим отсортированный массив на экран
  8. Возвращаем 0, чтобы указать, что программа успешно завершилась

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.083 из 5
Похожие ответы