Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Топ:
Марксистская теория происхождения государства: По мнению Маркса и Энгельса, в основе развития общества, происходящих в нем изменений лежит...
Методика измерений сопротивления растеканию тока анодного заземления: Анодный заземлитель (анод) – проводник, погруженный в электролитическую среду (грунт, раствор электролита) и подключенный к положительному...
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Интересное:
Берегоукрепление оползневых склонов: На прибрежных склонах основной причиной развития оползневых процессов является подмыв водами рек естественных склонов...
Как мы говорим и как мы слушаем: общение можно сравнить с огромным зонтиком, под которым скрыто все...
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Дисциплины:
2017-06-13 | 377 |
5.00
из
|
Заказать работу |
|
|
Структуру можно передать в функцию как параметр. При этом используется передача параметра по ссылке, то есть в структуру передается адрес переменной структурного типа.
# include < iostream.h >
struct Student {
int ID;
char name [ 10 ];
int age;
};
void input (Student *);
main () {
Student List;
input (&List);
cout << List.ID << List.name << List.age;
return 0;
}
void input (Student *L) {
cin >> L->ID;
cin >> L->name;
cin >> L->age;
}
Задания к самостоятельной работе
1. Описать структуру с именем Student, содержащую следующие поля: name, group, ses(успеваемость - массив из 5 элементов). Ввести с клавиатуры данные в массив stud1, состоящий из 10 структур типа student. Записи упорядочить по алфавиту. Вывести на экран фамилии и номера групп для всех студентов, имеющих оценки 4 и 5, если таких нет, то вывести соответствующее сообщение.
2. Описать структуру с именем Train, содержащую следующие поля: nazn(название пункта назначения), num(номер поезда), time(время отправления). Ввести с клавиатуры данные в массив rasp, состоящий из 6 структур типа Train. Записи упорядочить по номерам поездов. Вывести на экран информацию о поезде, номер которого введен с клавиатуры, если такого поезда нет, то вывести соответствующее сообщение.
3. Описать структуру с именем worker, содержащую следующие поля: name, pos(должность), year(год поступления на работу). Ввести с клавиатуры данные в массив tabl, состоящий из 10 структур типа worker. Записи упорядочить по дате поступления на работу. Вывести на экран фамилии работников, чей стаж работы превышает значение, введенное с клавиатуры, если таких нет, то вывести соответствующее сообщение.
Лабораторная работа 6
Файлы
В С++ ввод и вывод осуществляются через потоки. Поток (stream) - абстрактный канал связи, который создается в программе для обмена данными с файлами и стандартными устройствами ввода-вывода. По направлению передачи данных различают следующие потоки:
|
1. Входные потоки, из которых извлекаются данные (istream);
2. Выходные потоки, в которые записываются значения из программы (ostream);
3. Двунаправленный поток, который допускает и чтение, и запись.
При подключении библиотечного файла iostream.h создаются потоки cin и cout. Работа с файлами также осуществляется через потоки, при этом требуется подключить файл fstream.h. Этот файл позволяет создавать следующие потоки:
ifstream для чтения данных,
ofstream для записи данных,
fstream для чтения и записи данных.
Работу с файлами можно подразделить на 4 этапа:
1. Создание потока (объявление потоковой переменной). Переменные потока ввода из файла имеют тип ifstream, переменные потока вывода в файл имеют тип ofstream.
2. Связывание потока с файлами и открытие файла для работы в определенном режиме. Для связи файла с потоком используется функция open ().
3. Обмен данными с файлом через поток: запись в поток, чтение из потока. Информация из потоков считывается с помощью операций “ >> ” - извлечь из потока. Запись информации в файл осуществляется с помощью операции “ << ” - отправить в поток.
4. Разрыв связи потока с файлом: закрытие файла и разрыв его связи с потоком. Файл закрывается с помощью функции close ().
Пример. Написать программу, которая считывает две переменные из файла и записывает результат в другой файл.
Для решения этой задачи необходимо создать в программе Блокнот файл Т1.txt и записать два числа, а затем запустить программу.
# include < fstream.h >
main () {
ifstream in; // объявление входного потока
ofstream out; // объявление выходного потока
in.open (“ T1.txt ”); // связь потока с файлом
out.open (“T2.txt”);
int a, b, c;
in >> a >> b; // чтение данных из файла
c = a + b;
out << c; // запись результата в файл
in.close (); // разрыв потока с файлом
out.close (); // разрыв потока с файлом
return 0;
}
Режимы открытия файла
|
Файлы могут открываться в различных режимах. Режим открытия файла определяется с помощью определенных констант.
Константа | Режим | Позиция в файле |
ate | Используется для работы с файлами произвольного доступа | По умолчанию конец файла либо любая позиция в файле |
app | Используется для добавления данных в файл | Конец файла |
nocreate | Не создает новый файл. Если файл не существует, операция открытия не выполняется | |
noreplace | Не замещать. Если файл существует, то операция его открытия не выполняется | |
in | Открытие файла для чтения | Начало файла |
out | Открытие файла для записи | Начало файла |
|
|
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!