Érdemjegyek
Adott a következő fejlécállomány:
myheader.h
#ifndef _MYHEADER_H
#define _MYHEADER_H 1
struct element
{
char name[20];
int grades[10];
};
#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 hallgatók azonosítóként
szolgáló nevei és a félév során szerzett érdemjegyei találhatók. Minden hallgató legalább 1,
legfeljebb 10 érdemjegyet szerezhetett a félév során. Az érdemjegyek közé a struktúra
grades
mezőjének azokat az értékeit számítjuk, amelyek nem 0 értékűek (ezek a
tömb elejétől követik egymást, az első 0 értéket követően már csak újabb 0 értékek
szerepelnek a tömbben).
A programja először is határozza meg és írja a standard kimenetre, hogy hány hallgató adatai
szerepelnek a bináris állományban, majd írja ki az adataikat is oda a példa kimenetben
látható formában (az érdemjegyek tömbbeli sorrendjét megtartva)! A hallgatók adatait az
általuk szerzett érdemjegyek darabszáma alapján rendezze csökkenő sorrendbe! Ha ez alapján
nem tudja két hallgató sorrendjét eldönteni, akkor az ő adataikat a nevük lexikografikusan
növekvő sorrendjében írja a standard kimenetre! Figyeljen oda rá, hogy a sorok végén ne
szerepeljenek felesleges szóköz karakterek!
Parancssori argumentumok
students.bin
letöltés szöveges állományként
A futtatás egy lehetséges eredménye a standard kimeneten
4
Thomas (7): 3 5 2 5 3 4 2
Abigail (4): 2 3 4 2
Robert (4): 4 5 5 4
Peter (3): 2 5 3
letöltés szöveges állományként