Построить алгоритм нахождения k-го наибольшего элемента в последовательности из n элементов - C (СИ)

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

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

построить алгоритм нахождения k -го наибольшего элемента в последовательности из n элементов. Написать программу, реализующую этот алгоритм. Подсчитать сложность алгоритма. Я вот написал но почему то вылазят ошибки и не нравиться "mas"
#include <stdio.h>
#include <stdlib.h>

int main () {
int mas {1,2,3,4,5,6,7,8,9,20};
int max=0;
 
for (int i=0; i<10; i++) {
if (max<=mas[i]) {
max=mas[i];
}
}
printf ("max");
return 0;
 
}

Решение задачи: «Построить алгоритм нахождения k-го наибольшего элемента в последовательности из n элементов»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
 
int main() {
    int mas[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 20};
    int max = mas[0];
 
    for (int i = 1; i < 10; i++) {
        if (max < mas[i]) {
            max = mas[i];
        }
    }
    printf("max = %d\n", max);
    return 0;
}

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

  • Включаем необходимые заголовочные файлы для работы с массивами и вывода информации на экран
  • Объявляем массив из 10 элементов и инициализируем его значениями от 1 до 10
  • Устанавливаем начальное значение максимального элемента равным первому элементу массива
  • Запускаем цикл по массиву от 1 до 9 (так как индексы в массивах начинаются с 0)
  • Внутри цикла сравниваем текущий элемент массива с текущим максимальным значением
  • Если текущий элемент больше максимального, то обновляем значение максимального элемента
  • После завершения цикла выводим значение максимального элемента на экран
  • Возвращаем 0, чтобы указать, что программа успешно завершилась

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

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