Отсортировать массив, заданный с клавиатуры, простым методом выбора по убыванию - 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; }
Объяснение кода листинга программы
- Подключение стандартной библиотеки ввода-вывода
- Объявление константы n типа int, которая определяет размер массива
- Создание массива b типа int с размером n и инициализацией его нулями
- Ввод n целых чисел с клавиатуры и сохранение их в массиве b с помощью функции scanf
- Повторение цикла для каждого элемента массива b, начиная с 0 и до n-1
- Поиск минимального элемента в оставшейся части массива (от элемента i+1 до n-1)
- Перемещение текущего элемента на позицию минимального элемента
- Вывод на экран всех элементов массива b в порядке убывания
- Возврат 0, что означает успешное завершение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д