Отсортировать массив, заданный с клавиатуры, простым методом выбора по убыванию - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Нужно отсортировать массив, заданный с клавиатуры простым методом выбора по убыванию. На представленный ниже код, компилятор ругается и выдаёт: Error D:\TURBOC2\SORT.C 11 Expression syntax in function main Error D:\TURBOC2\SORT.C 12 Undefined symbol 'a' in function main
#include <stdio.h> /* Программа написана на языке Си. Простой выбор по убыванию */
#define n 5                                     
main(){
    int b[n];
    int i;
    for (i = 0; i<n; i++) scanf("%i", &b[i]);
    for (i = 0; i<n-1; i++){
    int imin = i;
    for (int j = i+1; j<n; j++)
        if (b[j] < b[imin]) imin = j;
    int a = b[i];            /* обмен эл-тов массива через буферную переменную */
    b[i] = b[imin];
    b[imin] = a;
    }
    for (i = 0; i<n; i++) printf("\n %i\n",b[i]);
    return 0;
}
Где ошибка? Чёт я не пойму Если кто поможет исправить буду оч благодарен.

Решение задачи: «Отсортировать массив, заданный с клавиатуры, простым методом выбора по убыванию»

textual
Листинг программы
#include <stdio.h> /* ÏðîãðГ*ììГ* Г*Г*ГЇГЁГ±Г*Г*Г* Г*Г* ÿçûêå Ñè. Ïðîñòîé âûáîð ГЇГ® óáûâГ*Г*ГЁГѕ */
#define n 5                                     
int main(){
    int b[n];
    int i, a, j, imin;
    for (i = 0; i<n; i++) scanf("%i", &b[i]);
    for (i = 0; i<n-1; i++){
    imin = i;
    for (j = i+1; j<n; j++)
        if (b[j] < b[imin]) imin = j;
    a = b[i];            /* îáìåГ* ГЅГ«-òîâ Г¬Г*Г±Г±ГЁГўГ* ÷åðåç ГЎГіГґГҐГ°Г*ГіГѕ ïåðåìåГ*Г*ГіГѕ */
    b[i] = b[imin];
    b[imin] = a;
    }
    for (i = 0; i<n; i++) printf("\n %i\n",b[i]);
    return 0;
}

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

  1. Подключение стандартной библиотеки ввода-вывода
  2. Объявление константы n типа int, которая определяет размер массива
  3. Создание массива b типа int с размером n и инициализацией его нулями
  4. Ввод n целых чисел с клавиатуры и сохранение их в массиве b с помощью функции scanf
  5. Повторение цикла для каждого элемента массива b, начиная с 0 и до n-1
  6. Поиск минимального элемента в оставшейся части массива (от элемента i+1 до n-1)
  7. Перемещение текущего элемента на позицию минимального элемента
  8. Вывод на экран всех элементов массива b в порядке убывания
  9. Возврат 0, что означает успешное завершение программы

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


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

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

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