În acest exemplu, veți învăța să găsiți cel mai mare număr introdus de utilizator într-o memorie alocată dinamic.
Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele următoarelor subiecte de programare C:
- C Pointeri
- C Alocarea dinamică a memoriei
- C pentru Loop
Găsiți cel mai mare element dintr-o memorie alocată dinamic
#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; )
Ieșire
Introduceți numărul total de elemente: 5 Introduceți numărul 1: 3.4 Introduceți numărul 2: 2.4 Introduceți numărul 3: -5 Introduceți numărul 4: 24.2 Introduceți numărul 5: 6.7 Cel mai mare număr = 24.20
În program, utilizatorul este rugat să introducă numărul de elemente, care este stocat în variabila num. Vom aloca memorie pentru numărul de valori flotante.
Apoi, utilizatorul este rugat să introducă numere. Aceste numere sunt stocate în memoria alocată dinamic.
În cele din urmă, cel mai mare număr dintre aceste numere este determinat și tipărit pe ecran.