Алгоритмы работы с массивами
Часть раздела Fundamentals путешествия по C на Coddy — урок 59 из 63.
Алгоритмы работы с массивами являются важными методами для манипулирования данными массивов. Давайте изучим некоторые распространенные операции с массивами.
Поиск максимального значения в массиве:
// Инициализируем массив
int numbers[] = {4, 9, 2, 7, 5};
// Устанавливаем начальное значение max равным первому элементу
int max = numbers[0];// Сравнение с другими элементами
for (int i = 1; i < 5; i++) {
if (numbers[i] > max) {
max = numbers[i];
}
}
// Теперь max содержит наибольшее значение (9)Поиск минимального значения работает аналогично:
// Устанавливаем начальное значение min равным первому элементу
int min = numbers[0];
// Сравниваем с остальными элементами
for (int i = 1; i < 5; i++) {
if (numbers[i] < min) {
min = numbers[i];
}
}
// Теперь min содержит наименьшее значение (2)Суммирование всех элементов в массиве:
int sum = 0;
// Добавляем каждый элемент к сумме
for (int i = 0; i < 5; i++) {
sum += numbers[i];
}
// Теперь sum содержит общую сумму (27)Задание
ЛегкоНапишите функцию с названием findAverage, которая вычисляет среднее арифметическое всех элементов в массиве целых чисел.
Функция должна:
- Принимать массив целых чисел и его размер в качестве параметров
- Вычислять сумму всех элементов
- Делить сумму на количество элементов для получения среднего значения
- Возвращать среднее значение в виде float
После вычисления среднего значения выведите результат ровно с 2 знаками после запятой, используя: printf("Average: %.2f\n", average);
Шпаргалка
Общие алгоритмы работы с массивами для поиска максимального, минимального значений и суммы:
Поиск максимального значения:
int max = numbers[0];
for (int i = 1; i < size; i++) {
if (numbers[i] > max) {
max = numbers[i];
}
}Поиск минимального значения:
int min = numbers[0];
for (int i = 1; i < size; i++) {
if (numbers[i] < min) {
min = numbers[i];
}
}Суммирование всех элементов:
int sum = 0;
for (int i = 0; i < size; i++) {
sum += numbers[i];
}Чтобы вывести число с плавающей запятой с 2 знаками после запятой: printf("Average: %.2f\n", average);
Попробуйте сами
#include <stdio.h>
// Напишите здесь вашу функцию findAverage
int main() {
int size;
scanf("%d", &size);
int numbers[size];
// Чтение элементов массива
for (int i = 0; i < size; i++) {
scanf("%d", &numbers[i]);
}
// Вызовите вашу функцию и выведите результат
float average = findAverage(numbers, size);
printf("Average: %.2f\n", average);
return 0;
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Fundamentals
2Переменные
Типы данныхЦелые числаFloat и DoubleСимволыЛогический типКонстантыОсновы printfПравила именования переменныхПриведение типов. Часть 1Приведение типов. Часть 2Итоговое задание3Операторы
Арифметические операторыОператор остатка от деленияИнкремент и декрементОператоры присваиванияОператоры сравненияЛогические операторы. Часть 1Логические операторы. Часть 2Логические операторы. Часть 3Задание на повторение