Tässä esimerkissä opit etsimään suurimman käyttäjän kirjoittaman numeron dynaamisesti varatusta muistista.
Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista C-ohjelmointiaiheista:
- C Osoittimet
- C Dynaaminen muistin allokointi
- C silmukalle
Löydä dynaamisesti jaetun muistin suurin elementti
#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; )
Tuotos
Syötä elementtien kokonaismäärä: 5 Syötä numero 1: 3.4 Syötä numero 2: 2,4 Syötä numero 3: -5 Syötä numero 4: 24,2 Syötä numero 5: 6,7 Suurin numero = 24,20
Ohjelmassa käyttäjää pyydetään syöttämään elementtien lukumäärä, joka on tallennettu muuttujaan num. Jaamme muistin kelluvien arvojen lukumäärälle.
Sitten käyttäjää pyydetään antamaan num numeroita. Nämä numerot tallennetaan dynaamisesti varattuun muistiin.
Lopuksi suurin luku näistä numeroista määritetään ja tulostetaan ruudulle.