Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LAB_ZI.doc
Скачиваний:
3
Добавлен:
13.11.2019
Размер:
1.85 Mб
Скачать

5 Методичні вказівки

1 Уважно прочитати теоретичний матеріал і приклади програм, що ілюструють особливості використання функцій блочного вводу-виводу у С-програмах.

2 Прочитати умову задачі індивідуального завдання, записати дані у файл за допомогою функції fwrite(). Закрити файл для запису.

3 Відкрити файл для читання і записані дані прочитати з файлу функцією fread() в змінні або масиви, результат вивести на екран.

4 Відкомпілювати програму, виправити помилки і виконати її. Закінчивши роботу з файлом, закрити його функцією fclose();

6 Приклад розв’язку завдання

Задати при описі 2 масиви розмірністю 4, елементами якого є дійсні та цілі числа. Використовуючи функції блочного вводу-виводу сформувати двійковий файл із елементів заданих масивів і прочитати 5 значень з сформованого файлу в змінні, які вивести на екран. Передбачити повідомлення про помилки при відкритті і закритті файлу, а також при використанні функцій блочного вводу-виводу.

Текст програми:

#include <stdio.h>

#include <stdlib.h>

#include<conio.h>

void main () {

clrscr();

int k;

int i, array1[4]={1,4,5,6}, a1,a2,a3,a4;

float array2[4]={6.7,8.9,4.5,3},a5;

FILE *fp; /* Відкриття файлу для запису в двійковому режимі */

fp=fopen("C:\\work\\list.txt", "wb");

k=fwrite(array1, sizeof(int), 4, fp); /* Запис масивів у файл */

if (k != 4) {printf("Помилка запису"); exit(1);}

k=fwrite(array2, sizeof(float), 4, fp) ;

if (k!= 4) {printf("Помилка запису"); exit(2);}

fclose(fp);

/* Відкриття файлу для читання в двійковому режимі */

fp=fopen("("C:\\ work \\list.txt", "rb"");

/* Зчитування даних в змінні a1,a2,a3,a4,a5*/

k=fwrite(&a1, sizeof(int), 1, fp);

if (k!= 1) {printf("Помилка запису"); exit(3);}

k=fwrite(&a2, sizeof(int), 1, fp);

if (k!= 1) {printf("Помилка запису"); exit(4);}

k=fwrite(&a3, sizeof(int), 1, fp) ;

if (k!= 1) {printf("Помилка запису");exit(5);}

k=fwrite(&a4, sizeof(int), 1, fp) ;

if (k!= 1) {printf("Помилка запису");exit(6);}

k=fwrite(&a5, sizeof(float), 1, fp) ;

if (k!= 1) {printf("Помилка запису");exit(7);}

fclose(fp);

/* Вивід прочитаних змінних на екран*/

printf("a1= %d\t a2= %d\t a3= %d\t a4= %d\t a5= %f\n ", a1,a2,a3,a4,a5); }

7 Питання вихідного контролю

1 Яку інформацію необхідно передати в функцію fwrite()?

2 Скільки аргументів має функція fread()?

3 Що повертає функція fwrite().?

4 Що повертає функція fread()?

5 Яку інформацію треба передати в функцію fopen() для відкриття файлу?

Список рекомендованої літератури

  1. Громов Ю.Ю., Татаренко С.И. Программирование на языке Си: Учебное пособие. - Тамбов, 1995. - 169с.

  2. Подбельский В.В., Фомин С.С., Программирование на языке Си. М.: Финансы и статистика, 1999. .– 600с.

  3. Керниган Б.В., Ричи Д.М. Язык программирования Си. \Пер. с англ., 3-е изд., испр.- СПб.:“Невский Диалект”, 2001. – 352с.

  4. Бредли Л. Джонс, Питер Єйткен, Освой самостоятельно С за 21 день, 6-е изд.: Пер. З англ. — М.: Издательский дом "Вильямс", 2003.- 800с

  5. Культин Н., С/C++ в задачах и примерах. Санк-Петербург: "БХВ Петербург", 2004.

  6. Павловская Т.А., С/C++ Програмирование на языке высокого уровня. : М.:, 2009.-460 с.

  7. Бірюльов К.Ю., Дещинський Ю.Л., Селемонавічус А.А., Хавалко В.М., Худий А.М., Якимів Ю.Б. Методичний посібник «Конспект лекцій з дисципліни Системне програмування».: Львів, 2005. – 149с.

  8. Шпак З.Я. Програмування мовою С. – Львів, “Оріяна-Нова”, 2006. – 431 с.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]