|
Feladatok:
1. Egy N és egy M
elemű tömböt töltsünk fel vétlenszerű
számokkal,
ahol legyen N>M. Rendezzük
mindkét tömböt
a köyvtáfüggvény qsort-al, majd
fésüljük össze a két tömb elemeit. Az
összefésüléshez használjunk egyszer 2·(N+M)
memóriát, majd fokozatosan javítsuk ezt, egyszer 2·N+M,
majd N+2·M memóriát használva.
Használjuk a realloc
könyvtárfüggvényt.
Az alábbi forráskód 0
végjelig olsav be
számokat és a realloc
könyvtárfüggvény
segítségével mindegyre helyet
foglal:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int number, i, n = 0;
int * p_number = NULL;
while(1){
printf ("Kerek egy egesz szamot
(0 a vegjel): ");
scanf ("%i", &number);
if(number == 0) break;
n++;
p_number = (int*) realloc
(p_number, n * sizeof(int));
p_number[n-1] = number;
}
printf ("A beolvasott szamok: ");
for (i=0; i<n; i++) printf ("%i ",p_number[i]);
printf("\n");
free (p_number);
return 1;
}
|