Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Informatica_Labs_metod.doc
Скачиваний:
5
Добавлен:
16.11.2018
Размер:
232.96 Кб
Скачать

Лабораторная работа № 7 Картотека. Вариант №1

Написать программу-картотеку для служащих некоторого предприятия. Каждая хранимая в ней карточка должна содержать информацию с набором общих полей и набором полей специфичных для каждого отдела.

Общие поля:

Поле

Имя поля в структуре

Тип / Размер

Имя

Name

char[255]

Фамилия

LastName

char[255]

Возраст

Age

int

Отдел

Department

enum (4 байта по умолчанию)

Задача

Task

Индивидуально, в зависимости от отдела (реализовать в виде union)

Поле «Отдел» может принимать одно из 3 значений, перечисленных с помощью enum:

DEPT_PROGRAMMERS

DEPT_MANAGEMENT

DEPT_ SHIPPING

Поле «Задача» зависит от отдела и должно быть реализовать в виде union:

Поле

Имя поля в структуре

Тип / Размер

Программисты (Programmers)

Проект

Project

char[255]

Рабочее место: CPU

CPU

char[127]

Рабочее место: память (МБайт)

Memory

int

Менеджмент (Management)

Проект

Project

char[255]

Заказчик

Customer

char[255]

Количество программистов

ProgrammersNum

int

Доставка (Shipping)

Адрес

Address

char[255]

Заказчик

Customer

char[255]

Вес

Weight

int

Тип транспорта

Transport

enum (4 байта по умолчанию)

Поле «Тип Транспорта» может принимать одно из 4 значений, перечисленных с помощью enum:

TRANSP_TRAIN

TRANSP_AUTO

TRANSP_AERO

TRANSP_SHIP

Вариант №2

Написать программу - телефонную книжку. Каждая запись с информацией об абоненте должна содержать следующий набор полей:

Поле

Имя поля в структуре

Тип / Размер

ФИО

Name

char[50]

Телефон

Phone

int

Возраст

Age

int

Раздел

Group

enum (4 байта по умолчанию)

Дополнительные сведения

Misc

Индивидуально, в зависимости от раздела (реализовать в виде union)

Поле «Раздел» может принимать одно из 3 значений, перечисленных с помощью enum:

GROUP_FRIENDS

GROUP_COLLEAGUES

GROUP_APPLICANTS

Поле «Дополнительные сведения» зависит от раздела и должно быть реализовать в виде union:

Поле

Имя поля в структуре

Тип / Размер

Друзья (Friends)

День Рождения

Birthday

char[32]

Домашний адрес

Address

char[127]

Комментарии

Comments

char[255]

Коллеги (Colleagues)

Отдел

Department

enum (4 байта по умолчанию)

Номер рабочего места

CubicNo

int

Проект

Project

char[255]

Соискатели (Applicants)

Дата подачи заявления

ApllicationDate

char[32]

Язык программирования

Language

char[127]

Уровень знаний

Grade

int

Требуемая зарплата

Salary

int

Поле «Отдел» может принимать одно из 4 значений, перечисленных с помощью enum:

DEPARTMENT_SOFTWARE

DEPARTMENT_HARDWARE

DEPARTMENT_FIRMWARE

DEPARTMENT_MANAGEMENT

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