Найти номер максимального элемента массива - C (СИ) (70268)
Формулировка задачи:
Подскажите пожалуйста как решить 2 задачки
1.как найти номер максимального элемента массива (массив рандомный)
2.найти суму элементов массива после первого позитивного элемента.
Решение задачи: «Найти номер максимального элемента массива»
textual
Листинг программы
#include <stdio.h> #include <locale.h> #include <stdlib.h> int main() { setlocale(LC_ALL,".1251"); int index=1, max; const int n = 10; int arr[n]; printf("Массив: \n"); for (int i = 0; i < n; i++) { arr[i] = rand() % (rand() - rand()%100 + 1) + rand()%125; printf("%d ", arr[i]); } max = arr[0]; for (int i = 1; i < n; i++) { if (max < arr[i]) { max = arr[i]; index = i; } } printf("\nНомер максимального элемента массива : %d он находится в позиции %d\n", max, index+1); return 0; }
Объяснение кода листинга программы
В этом коде:
- #include
Включается заголовочный файл, который содержит функции для ввода и вывода данных. - #include
Включается заголовочный файл, который содержит функции для работы с локалью. - #include
Включается заголовочный файл, который содержит функции для работы с памятью и для генерации случайных чисел. - int main() { Функция main() является точкой входа в программу.
- setlocale(LC_ALL,
.1251
); Устанавливается локаль для ввода и вывода данных. - int index=1, max; Переменная index инициализируется значением 1, а переменная max пока не имеет определенного значения.
- const int n = 10; Объявляется константа n, которая определяет размер массива.
- int arr[n]; Объявляется массив arr размером n.
- printf(
Массив: \n
); Выводится заголовок цикла. - for (int i = 0; i < n; i++) { начинается цикл, который заполняет массив значениями.
- arr[i] = rand() % (rand() - rand()%100 + 1) + rand()%125; Генерируется случайное число и записывается в массив.
- printf(
%d
, arr[i]); Выводится значение элемента массива. - max = arr[0]; Первый элемент массива присваивается переменной max.
- for (int i = 1; i < n; i++) { начинается цикл, который ищет максимальное значение в массиве.
- if (max < arr[i]) { Если текущий элемент больше значения max, то значение max обновляется.
- max = arr[i]; Сохраняется новое максимальное значение.
- index = i; Сохраняется номер элемента с максимальным значением.
- printf(
\nНомер максимального элемента массива : %d он находится в позиции %d\n
, max, index+1); Выводится результат. - return 0; Конец функции main().
- } Конец цикла.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д