Programozó versenyek

Magas szintű programozási nyelvek 1, 2017. január 4., Sz8 ZH

2017. január 4. 8:05 – 2017. január 4. 10:00

Hosszú zeneszámok

Adott a következő fejlécállomány:

myheader.h

  1. #ifndef _MYHEADER_H
  2. #define _MYHEADER_H 1
  3. struct element {
  4.     int kezdes_perc, kezdes_masodperc;
  5.     char cim[100];
  6. };
  7. #endif /* myheader.h */
letöltés szöveges állományként

Írjon programot, amelynek egyetlen parancssori argumentuma van, egy bináris állomány neve! A bináris állomány struct element típusú rekordjaiban legendás zenekarok egy-egy felejthetetlen albumának zeneszámairól tárolunk adatokat: a rekordok a számok fizikai sorrendjében tárolódnak az állományban, a kezdes_perc és kezdes_masodperc adatok pedig a számok kezdési adatait mutatják. A zeneszámok címe egy legalább egy karaktert tartalmazó sztring. Az album első számának kezdési időpontja 0.00, a többiek kezdése ehhez az időponthoz van viszonyítva. A programjának a leghosszabb lejátszási idővel rendelkező zeneszámok címeit kell a standard kimenetre írnia, soronként egyet-egyet, lexikografikusan növekvő sorrendben. Az állomány utolsó rekordja egy álrekord, amelynek a cím mezője az üres sztringet tartalmazza, és csak azért szerepel az állományban, hogy meg lehessen állapítani az utolsó zeneszám lejátszási idejét.

Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.