Programozó versenyek

Programozási nyelvek 1, 2019. május 23., Cs10 ZH

2019. május 23. 10:05 – 2019. május 23. 11:50

Ehnaton fáraó #4

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

myheader.h

  1. #ifndef _MYHEADER_H
  2. #define _MYHEADER_H 1
  3. struct element
  4. {
  5.     char name[20];
  6.     int begin_year;
  7.     int end_year;
  8. };
  9. #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 fáraók uralkodásának kezdő- és végévszámai találhatók. A fáraókat a nevükkel azonosítjuk, nincs két azonos nevű fáraó.

A programja írja a standard kimenetre a fáraók adatait az uralkodásuk időrendjében! Minden fáraó neve előtt jelenítse meg a példa kimenetben látható módon azt is, hogy mikor léptek trónra, és mikor fejezték be uralkodásukat! Ügyeljen arra, hogy a kimenet minden sorát soremelés karakterrel zárja!

Egy pharaohs.bin bináris állományt generáló példaprogram

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include "myheader.h"
  4. int main()
  5. {
  6.     struct element t[] =
  7.     {
  8.         {"I. Jahmesz", -1550, -1526},
  9.         {"Ehnaton", -1353, -1336},
  10.         {"I. Amenhotep", -1526, -1506}
  11.     };
  12.     FILE *f = fopen("pharaohs.bin", "wb");
  13.     fwrite(t, sizeof(t), 1, f);
  14.     fclose(f);
  15.     return EXIT_SUCCESS;
  16. }
letöltés szöveges állományként

Parancssori argumentumok

  1. pharaohs.bin
letöltés szöveges állományként

A futtatás eredménye a standard kimeneten

  1. -1550 - -1526 : I. Jahmesz
  2. -1525 - -1506 : I. Amenhotep
  3. -1353 - -1336 : Ehnaton
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2024.09.30.