Cześć potrzebuję napisać funkcję która będzie odczytywała z pliku pytanie, 4 odpowiedzi oraz poprawną odpowiedz i zapisać te dane do struktury. Próbowałem to zrobić za pomocą funkcji fgets lecz nie za bardzo wiem jakie parametry ustawić.
Format pliku wygląda następująco:
Pytanie
OdpA
OdpB
OdpC
OdpD
Poprawna odpowiedz
Obecnie jestem na etapie:
#include <stdio.h>
#include <stdlib.h>
#define ELEMENTY 10
struct Pytania
{
char tresc[50];
char odpA[5], odpB[5], odpC[5], odpD[5];
char poprawna[5];
}nr[ELEMENTY];
void WczytajZPliku(struct Pytania nr[])
{
FILE *plik;
plik=fopen("Dane.txt", "r");
if(plik==NULL)
{
printf("Blad otwierania pliku");
exit(0);
}
int i=0;
while(EOF!=fscanf(plik, "%s %s %s %s %s", nr[i].tresc, nr[i].odpA, nr[i].odpB, nr[i].odpC, nr[i].odpD))
{
printf("%s\n %s %s %s %s", nr[i].tresc, nr[i].odpA, nr[i].odpB, nr[i].odpC, nr[i].odpD);
i++;
}
if(fclose(plik))
printf("Blad zamkniecia pliku");
}
int main()
{
WczytajZPliku(nr);
return 0;
}
Edit:
Wymyśliłem coś takiego
fgets(nr.tresc, 255, plik);
printf("%s\n", nr.tresc);
fgets(nr.odpA, 25, plik);
printf("A: %s\n", nr.odpA );
fgets(nr.odpB, 25, plik);
printf("B: %s\n", nr.odpB);
Nie wiem czy to dokładnie poprawna forma