Написать функцию поиска максимального и минимального элементов одномерного массива - C (СИ) (76685)
Формулировка задачи:
Задание: Написать функцию поиска максимального и минимального элементов одномерного массива. В основной программе вызвать эту функцию для двух разных массивов.
А как сделать чтобы числа массива можно было вводить с клавиатуры, чтобы получилось вот так:
#include <stdio.h>
void GetMinMax(int* a, int size, int* min, int* max){
*min = *a; *max = *a;
int i = 0;
for (i = 1; i < size; i++)
{
if ( *max < a[i] ) *max = a[i];
if ( *min > a[i] ) *min = a[i];
}
}
#define Na 5
#define Nb 3
int main()
{
int a[Na] = {10, 20, -3, 60, 1};
int b[Nb] = {-5, 2, 10};
int min = 0, max = 0;
GetMinMax(&a[0], Na, &min, &max);
printf("min: %d; max: %d\n", min, max);
GetMinMax(&b[0], Nb, &min, &max);
printf("min: %d; max: %d\n", min, max);
return 0;
}Решение задачи: «Написать функцию поиска максимального и минимального элементов одномерного массива»
textual
Листинг программы
int a[Na];
int b[Nb];
int i;
for(i=0;i<Na;i++)
{
printf("%s%d%s\n","Enter element a[",i,"]:");
scanf("%d",&a[i]);
}
for(i=0;i<Nb;i++)
{
printf("%s%d%s\n","Enter element b[",i,"]:");
scanf("%d",&b[i]);
}
Объяснение кода листинга программы
В этом коде определен массив a типа int переменной длины Na и массив b типа int переменной длины Nb. Затем в цикле for с помощью функции scanf с первого элемента каждого массива считывается целочисленное значение. Таким образом, пользователь поочередно вводит элементы массива a и b до тех пор, пока все элементы не будут введены. Ввод осуществляется с помощью функции printf, которая выводит сообщение с просьбой ввести элемент массива и его индекс.