Найти номер максимального элемента массива - 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().
- } Конец цикла.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д