C-ohjelmointi syksy 2007
Harjoitus 6
Kokeeseen saa ottaa yhden A4-arkin kokoisen muistilapun, jonka voi
täyttää molemmin puolin.
Tehtävät
käsitellään harjoitustilaisuuksissa 11-12.10.2007
struct employee { long id; char name[50]; double salary; };Kirjoita seuraavat funktiot:
#define MAX 100 char* storage[MAX];input() lukee tiedoston fname ja tallettaa rivit tästä tiedostosta taulukkoon. Älä tee mitään oletuksia rivien pituudesta. Käytä funktiota getline() kirjan esimerkistä 10.3. Funktion input() pitää poistaa taulukosta kaikki rivit, jotka ovat tyhjiä (sisältävät vain rivinvaihtomerkin ja mahdollisesti välilyöntejä ennen sitä) ja kertoa kuinka monta riviä on poistettu. Tee myös main funktio, joka kutsuu funktiota input() ja tulostaa taulukon sisällön standardi syöttövirtaan.
void compareGen(const void *block1, const void *block2, size_t elemSize, size_t block1Size, size_t block2Size, int (*compareIt) (const void*, const void*));joka tekee kahden lohkon leksiograafisen vertailun. Testaa ohjelmasi käyttäen double lohkoja ja lohkoja, joissa on osoittimia double:hin.
.