В этом примере вы научитесь находить наибольшее число, введенное пользователем в динамически выделяемой памяти.
Чтобы понять этот пример, вы должны знать следующие темы программирования на C:
- Указатели C
- C Распределение динамической памяти
- C для цикла
Найдите самый большой элемент в динамически выделяемой памяти
#include #include int main() ( int num; float *data; printf("Enter the total number of elements: "); scanf("%d", &num); // Allocating memory for num elements data = (float *)calloc(num, sizeof(float)); if (data == NULL) ( printf("Error!!! memory not allocated."); exit(0); ) // Storing numbers entered by the user. for (int i = 0; i < num; ++i) ( printf("Enter Number %d: ", i + 1); scanf("%f", data + i); ) // Finding the largest number for (int i = 1; i < num; ++i) ( if (*data < *(data + i)) *data = *(data + i); ) printf("Largest number = %.2f", *data); return 0; )
Вывод
Введите общее количество элементов: 5 Введите число 1: 3,4 Введите число 2: 2,4 Введите число 3: -5 Введите число 4: 24,2 Введите число 5: 6,7 Наибольшее число = 24,20
В программе пользователя просят ввести количество элементов, которое хранится в переменной num. Мы выделим память для определенного количества значений с плавающей запятой.
Затем пользователя просят ввести число чисел. Эти числа хранятся в динамически выделяемой памяти.
Наконец, наибольшее число среди этих чисел определяется и печатается на экране.