Lista 10 (3 stycznia 2006): 10 punktów.
Przeczytaj z książki B.W.Kernighana i D.M.Ritchiego
Język ANSI C rozdział 7:
Wejście i wyjście.
- (2 punkty)
Napisz program, który wczyta nazwę pliku tekstowego, a następnie
wypisze jego zawartość, o ile plik istnieje, na standardowym
wyjściu.
Plik należy napierw otworzyć do czytania, potem przeczytać go linia
po linii, a na końcu zamknąć.
Jeśli linia jest dłuższa niż 79 znaków, to pozostałe znaki w tej
linii należy zignorować.
Uwaga:
Należy korzystać tylko z funkcji standardowych zadeklarowanych
w pliku nagłówkowym <stdio.h>.
Wskazówka:
Posłuż się funkcją fgets().
- (3 punkty)
Napisz program, który wczyta nazwę pliku tekstowego, a następnie
zapisze w nim 1000 pierwszych liczb pierwszych (2, 3, 5, 7, ...).
Plik należy napierw otworzyć do pisania, potem zapisać w nim tysiąc
liczb (każda w osobnej linii), a na końcu zamknąć.
Uwaga:
Należy korzystać tylko z funkcji standardowych zadeklarowanych
w pliku nagłówkowym <stdio.h>.
Wskazówka:
Zaprogramuj sito Eratostenesa.
- (5 punktów)
W tekstowym pliku z danymi jest zapisanych N liczb
rzeczywistych a1, ..., aN.
Format pliku z danymi jest taki, że w pierwszej linii jest zapisana
liczba całkowita N typu int, a w kolejnych liniach
pooddzielane białymi znakami wartości rzeczywiste
a1, ..., aN typu
double.
Należy te liczby odczytać, zapamiętując je równocześnie
w dynamicznie przydzielonej tablicy.
Na koniec trzeba je zapisać do pliku binarnego (bez wartości
N na początku) i zwolnić przydzieloną pamięć.
Uwaga:
Należy korzystać tylko z funkcji standardowych zadeklarowanych
w pliku nagłówkowym <stdio.h>.
- (5 punktów, kontynuacja poprzedniego zadania)
W binarnym pliku z danymi jest zapisane są liczby typu
double.
Określ ile tych liczb jest zapisanych w pliku, przydziel dynamicznie
odpowiedni obszar pamięci i wczytaj je tam.
Następnie policz średnią arytmetyczną i odchylenie
standardowe i wypisz te wielkości na standardowym wyjściu.
Na końcu zwolnij przydzieloną pamięć.
Uwaga:
Należy korzystać tylko z funkcji standardowych zadeklarowanych
w pliku nagłówkowym <stdio.h>.
Uwaga:
W celu określenia ilości zapisanych w pliku binarnym danych posłuż
się funkcjami fseek() i ftell().
|