Студенческий портал

admin@studynote.ru
/ Регистрация
X
Помощь студенту > Готовые работы > Контрольные работы > Информатика > Блоковый ввод-вывод

Тема : Блоковый ввод-вывод

100 рублей
Купить

или

Заказать новую работу

Более 20 способов оплатить! После оплаты вы получаете ссылку на скачивание. Гарантия на - 3 дня. Исключительно в ознакомительных целях! Все вопросы admin@studynote.ru

  • Общая информация
  • Описание работы
  • Дополнительная информация

    (фрагменты работы)

Учебное заведение:Другие города > Вузы города Пермь > Пермский государственный технический университет
Тип работы:Контрольные работы, Решение задач
Категория:Информатика, Программирование
Год сдачи:2015
Количество страниц:11
Оценка:5
Рейтинг работы:

1.     «Блоковый ввод-вывод»

Цель: Работа с двоичными файлами, организация
ввода-вывода структурированной информации и ее хранение на внешних носителях.

2.     Постановка задачи

Сформировать
двоичный файл из элементов, заданной в варианте структуры, распечатать его
содержимое, выполнить удаление и добавление элементов в соответствии со своим вариантом,
используя для поиска удаляемых или добавляемых элементов функцию. Формирование,
печать, добавление и

удаление
элементов оформить в виде функций. Предусмотреть сообщения об ошибках при
открытии файла и выполнении операций ввода/вывода.

Заданная
структура

Структура
"Сотрудник":

-
фамилия, имя, отчество;

-
должность

- год
рождения;

-
заработная плата.

Удалить
элемент с указанной фамилией, добавить элемент после элемента с указанным
номером.

 

3.
Блок – схема решения задачи.

1.    
Программный код решения задачи.

 

#include

#include

#include

#include

#include

#include

 

using namespace
std;

//имя файла куда будем записывать данные

const char
filename[] = "in.dat";

//структура сотрудник

struct employee {

         char fio[30];//фамилия,имя,отчество

         char job[20];//должность

         int year;//год рождения

         float salary;//заработная плата

};

//функция ввода данных в файл

void input() {

         int n;

         //вводим количество
сотрудников с проверкой на корректность данных

         do {

             cout << "Количество сотрудников: ";

             cin >> n;

         } while
(n<=0 || n>30);

         employee st;

         FILE *f;

         //открываем файл для записи

         f =
fopen(filename, "wb");

         if (!f) {

                   perror("\\nОшибка при открытии файла");

                   exit(1); // если при открытии файла
возникает

         }

         int i;

         //вводим данные с
клавиатуры и заносим их в файл

         for (i=0;i<n;i++) {