Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
В листинге 6.3 представлена программа, которая
· создает бинарный файл, в котором храниться информация о сотрудниках предприятия: фамилия и инициалы, год рождения, оклад.
· Выводит на экран информацию, хранимую в бинарном файле, а также сведения о сотруднике по заданной фамилии и инициалам (рис. 6.5).
Листинг 6.3 Создание и обработка бинарного файла
#include <stdio.h>
#include <string.h>
#include <iostream>
Using namespace std;
const int l_name = 30;
Struct Man
{ char name[l_name];
Int birth_year;
Float pay;
};
int compare(const void *manl, const void *man2);
void create(void) // Создание файла
{ Man man; int pr; FILE *fbin;
if ((fbin =fopen("dbase.bin","wb")) == NULL)
puts("Ошибка создания файла\n ");
Else
{ do
{ cout << "\n Фамилия и инициалы: ";
Cin.get(); gets (man.name);
cout << "\n Год рождения: ";
cin >> man.birth_year;
cout << "\n Оклад: ";
cin >> man.pay;
fwrite(&man, sizeof(man),1,fbin);
cout<< "\n Продолжить ввод? (1-да/0-нет)";
cin >> pr;
} while(pr == 1);
}
Fclose(fbin);
}
void view(void) // Просмотр файла
{ FILE *fbin;
if ((fbin =fopen("dbase.bin","rb")) == NULL)
puts("Ошибка открытия файла\n");
Else
{ fseek(fbin, 0, SEEK_END);
int n_record = ftell(fbin)/sizeof(Man);
Man *man = new Man[n_record];
Fseek(fbin, 0, SEEK_SET);
Fread(man, sizeof(Man),n_record, fbin);
Fclose(fbin);
Дата публикования: 2015-04-07; Прочитано: 316 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!