Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
Топ:
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Устройство и оснащение процедурного кабинета: Решающая роль в обеспечении правильного лечения пациентов отводится процедурной медсестре...
Интересное:
Национальное богатство страны и его составляющие: для оценки элементов национального богатства используются...
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Введение
Написать программу, в которой необходимо создать структуру, элементами которой являются фамилия сотрудника и его зарплата. Объявить массив данных о сотрудниках типа структуры и ввести значения его элементов. Определить суммарный заработок сотрудников и сотрудника, у которого максимальная зарплата. Предусмотреть меню. Результаты работы программы записать в файл.
Данная программа предназначена для хранения и вывода списка сотрудников предприятия и их зарплаты. Метод, реализованный в задании, а так же саму программу, можно применять в различных отраслях, так например, в обучении так и в небольших организациях, для создания баз данных учеников, сотрудников, клиентов и т.д.
В программе предусмотрен, возможности записи новых сотрудников и их зарплаты, вывод списка сотрудников и вывод общую суммы заработка, поиск сотрудника с самой большой заработной платой, вывод всех данных в файл.
Курсовая работа состоит из программы, созданной на языке программирования Microsoft Visual C++ консольное приложение (Win 32 Console Application).
ТЕОРЕТИЧЕСКИЕ ОСНОВЫ
Работа с файлами
Запись в файл и чтение в c++ почти ничем не отличаются от стандартного ввода и вывода. Вместо cin и cout надо будет указать "файл", из которого вы читаете.
Для работы программы надо подключить header-файл fstream:
#include <fstream>
Для того чтобы открыть файл:
ofstream out;.("file.type");
if (out ==NULL) return 0; // если не смогли открыть файл
Теперь для записи вывода в файл достаточно писать вместо cout идентификатор out
out<<"this string was wrote to file by c++;)"<<endl;
Дополнительные функции:
· is_open() - проверят, открыт ли файл. Если открыт возвращает 1 иначе 0 (true or false)
· skeek(kuda) - перемещает позицию с которой мы будем писать.
· tellp() - выдает позицию, в которой мы находимся
· close() - закрывает файл
Чтение из файла почти ничем не отличается. Вместо ofstream пишем ifstream и для ввода используем оператор >>
ifstream somefile;.("file.txt");
string s;>>s;
Дополнительные функции:
· is_open() - проверят, открыт ли файл. Если открыт возвращает 1 иначе 0 (true or false)
· eof() - возвращает true если дошли до конца файла
· seekg(kuda) - перемещает позицию с которой мы считаем в заданное место.
· tellg() - выдает позицию, в которой мы находимся
· close() - закрывает файл
Запись и чтение из файла:
Для этого вам надо создать экземпляр класса fstream:
fstream file;.open(file,"параметры через |");
и можно будет и читать и писать в файл. Немного подробнее про параметры:
· ios::in - открыть файл для чтения
· ios::out - открыть для записи с начала файл
· ios::app - открыть для дозаписи в конец файла
· ios::ate - установить указатель (где мы щас находимся в файле) в конец файла
· ios::thrunc - очистить файл если он существует
· ios::binary - открыть файл в бинарном формате (типа exe,dll,o и т.д, не думаю, что вам в ближайшем будущем понадобится)
Для вывода file<<chto_vivesti и для чтения file>>
Структуры
Структура это совокупность переменных, объединенных под одним именем. С помощью структур удобно размещать в смежных полях связанные между собой элементы информации. Объявление структур создает шаблон, который можно использовать для создания ее объектов, то есть экземпляров этой структуры. Переменные, из которых состоит структура, называются членами. Члены структуры еще называют элементами или полями.
Как правило, члены структуры связаны друг с другом. Например, элемент списка рассылки, состоящий из имении адреса, логично представить в виде структуры. В объявлении структуры используется ключевое слово struct. Оно сообщает компьютеру, что объявляется (декларируется) структура.
struct addr
{name[30];street[40];city[20];state[3];long int zip;
};
Объявление структуры завершается точкой с запятой. Это потому, что объявление структуры является оператором. Кроме того, тег структуры addr идентифицирует эту конкретную структуру данных и является спецификатором ее типа.
В данном случае на самом деле никакая переменная не создается. Всего лишь определяется вид данных. Когда Вы объявляете структуру, то определяете агрегатный тип, а не переменную. И пока Вы не объявите переменную этого типа, то существовать она не будет. Чтобы объявить переменную типа addr, то есть физический объект, необходимо написать следующее: addr addr_info;
В этом операторе объявлена переменная типа addr, которая называется addr_info. Таким образом, addr описывает вид структуры (ее тип), а addr_info является экземпляром (объектом) этой структуры. Когда объявляется переменная-структура, компилятор автоматически выделяет количество памяти, достаточное для того, чтобы разместить все ее члены.
Массивы
В C++ можно определить массив любого типа.mas[3];
Описан массив из 3 целых чисел. Нумерация в массивах начинается с 0-го элемента. Поэтому массив mas содежит: mas[0], mas[1], mas[2]
Массив можно инициализировать при описании. В этом случае нет необходимости указывать его размер.mas[]={23, 25, 81};
Далее создан массив mas из 3-х элементов:[0]= 23, mas[1]= 25, mas[2]= 81.
Кроме стандартного доступа к элементам массива C++ обеспечивает еще один. В C++ имя массива представляет собой не только имя, которое вы используете в своих программах, но и является адресом, по которому в памяти находится первый элемент массива. Поэтому к элементам массива можно обращаться следующими способами:m[6] = {4, 3, 1, 4, 7, 8 };[3] или (m + 3)[0] Обращение к 4-му элементу массива.
Возможны и другие варианты:
(m + 0)[3]; (m + 2)[1]; (m - 2)[5]
Наиболее полезно использовать такой подход к массивам, содержащим символьные строки.
Многомерные массивы
Многомерные массивы - это массивы с более чем одним индексом.
Чаще всего используются двумерные массивы.
При описании многомерного массива необходимо указать C++, что массив имеет более чем одно измерение.
В памяти многомерные массивы представляются как одномерный массив, каждый из элементов которого, в свою очередь, представляет собой массив.
Второй способ инициализации при описании массиваа[3][2]={ {4,1}, {5, 7}, {2, 9} };
Обращение к элементу массива производится через индексы. cout<< а[0][0];
При передаче массива в функцию всегда происходит передача его адреса. Т.о. в C++ все массивы передаются по адресу.
Принимающая функция получает не весь массив, а только адрес первого элемента массива.
Указатели
Указатели - это переменные, которые содержат адрес адреса данных. В С++ указатели могут быть на любой тип данных.
Если необходимо, можно описать массив указателей.*ip[ 10 ];
массив указателей на целые значения из 10 элементов.
С указателем можно производить некоторые арифметические операции. Например, при работе с массивами.
ОПИСАНИЕ ПРОГРАММЫ
|
|
|
Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...
История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!