Imam naime problem kod jednog zadatka kojeg trebam rjesiti.
Imam datoteku Bodovi.dat koju treba procitat.
Napravim strukturu, ucitam dadoteku i kada treba ispisati, dobim nekakav žnj podatak.
Informacije o zadatku:
Bodovi.dat je binarna datoteka koja se sastoji od podataka o
svakom studentu za razne elemente ocjene. Svaki zapis se
sastoji od točno 8 byte-ova
– 1 byte (8 bitova) – šifra ispita (unsigned char)
– 6 byte (48 bitova) – šifra studenta (poslana u mailu)
– 1 byte (8 bitova) – postignut broj bodova na tom ispitu (unsigned
char)
Program od korisnika mora tražiti unos šifre studenta (6
znakova), te ispisati rezime bodova studenta u datoteku
rezultat.txt u sljedećem formatu
Ja predam sifru studenta i sifru ispita, al kad mi treba ispisati bodovi, onda C program poludi !
Bitno mi je samo da dobro procita i ispise na konzolu pravilan podatak, ostalo cu znat rjesiti, bas sam zapeo na pocetku xD
Gdje ja zapravo grjesim?
U samom programu je test s podacima koji se nalaze u datoteci Bodovi.dat
Kod: Označi sve
typedef struct{
unsigned char sifra[1+1];
unsigned char student[6+1];
unsigned char bodovi[1+1];
}Osoba;
int main(int argc, char *argv[])
{
Osoba o2;
int len,len2;
unsigned char test_student[6+1]={"53775A"};
unsigned char test_sifra[1+1]={"15"};
len = strlen(test_student);
len2 = strlen(test_sifra);
FILE* fin = fopen("Bodovi.dat", "rb");
fseek(fin, sizeof(Osoba) * (len-1)*(len2-1), SEEK_SET);
fread(&o2, sizeof(Osoba), 1, fin);
printf("%s\n",o2.bodovi);
fclose(fin);
system("PAUSE");
return 0;
}