Написать функцию нахождения максимального значения в массиве - C (СИ)

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

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

Помогите с заданием: Числовой массив B (вещественный) содержит k элементов. Элементы массива вводится с клавиатуры. Написать подпрограммы создания массива и вывода его на экран. В первом задании требуется написать функцию нахождения максимального значения, а во втором - среднего арифметического указанных в условии элементов (между понимать строго – не включая найденные позиции): 1) max (|b1|,...,|bk|) для |bi|<Y 2) Среднее арифметическое элементов, расположенных между первым и последним положительными элементами

Решение задачи: «Написать функцию нахождения максимального значения в массиве»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char** argv) {
   //Функция нахождения максимального элемента в массиве - возращает его номер
    int getmax(float mas [], int k) {
        if (k<1) return(-1);
        int     num=0;
        float   max=mas[num];
        int     i;
        for (i=1;i<k;i++) {
            if( mas[i]>max ) { max=mas[i]; num=i; }
        }
        return(num);
    } 
  //ввод данных   
    int         k,i;
    float       d; 
    
    printf("введите размер массива :");
    scanf("%d",&k);
    float B[k]; 
    for (i=0;i<k;i++) {
      printf("B[%d]=",i);
      scanf("%f",&d);
      B[i]=d; 
    }
    
    int num=getmax(B,k);
   //вывод результата
    if (num<0) printf("Не задан размер массива");
    else {
        printf("\n\n массив из %d ээлементов",k);
        for (i=0;i<k;i++) { printf("\n B[%d]=",i);printf("%f",B[i]); } 
        printf("\n Максимальный элемент в массиве B[%d]=",num); printf("%f",B[num]);
    }
    return (EXIT_SUCCESS); 
}

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

  1. Включаются заголовочные файлы stdio.h и stdlib.h
  2. Определяется функция main, которая является точкой входа в программу
  3. Внутри функции main определяется функция getmax, которая принимает массив и его размер в качестве аргументов и возвращает номер максимального элемента в массиве
  4. Далее в функции main происходит ввод данных: с помощью функции scanf считывается размер массива и с помощью цикла for происходит ввод элементов массива
  5. После ввода данных вызывается функция getmax для нахождения максимального элемента в массиве
  6. Результат сохраняется в переменной num
  7. Если размер массива не задан, выводится сообщение об ошибке
  8. В противном случае выводится сообщение о размере массива и его элементах
  9. Выводится максимальный элемент массива
  10. Функция main возвращает значение EXIT_SUCCESS, что означает успешный конец работы программы

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


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

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

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