Quantcast
Viewing all articles
Browse latest Browse all 21942

Odczytywanie danych z pliku do struktury

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 


Viewing all articles
Browse latest Browse all 21942

Trending Articles