- •Лабораторная работа n 1 работа в итегрированной среде
- •Программа работы
- •Пояснения к работе
- •Контрольные вопросы?????????
- •Лабораторная работа n 2 изучение функций ввода / вывода
- •Программа работы
- •Методические указания
- •Задание:
- •Контрольные вопросы
- •Int main() //имя головной программы
- •Int k,m; //описание переменных
- •Лабораторная работа n 3
- •3. Ответить на контрольные вопросы.
- •Контрольные вопросы
- •Варианты заданий
- •Лабораторная работа № 4 изучение условного оператора
- •Программа работы
- •3. Составить отчёт.
- •4. Ответить на контрольные вопросы. Методические указания
- •Пример программы
- •3. Ответить на контрольные вопросы.
- •Пример программы
- •Контрольные вопросы
- •Варианты заданий
- •Лабораторная работа n 6 оформление алгоритма в виде функции
- •Программа работы
- •5. Составить отчёт.
- •6. Ответить на контрольные вопросы. Методические указания
- •Примеры программ
- •1. Функция swap1 обменивает два значения, имея в качестве аргументов указатели:
- •2. Функция swap2 делает то же, что и предыдущая функция, имея в качестве параметров ссылк
- •Головная программа
- •Лабораторная работа n 7
- •6. Ответить на контрольные вопросы.
- •Методические указания
- •Примеры программ
- •Лабораторная работа n 8
- •Программа работы
- •4.Ответить на контрольные вопросы.
- •Методические указания
- •Лабораторная работа n 9
- •Программа работы
- •5. Ответить на контрольные вопросы.
- •6. Составить отчёт. Методические указания
- •Программа работы
- •3. Ответить на контрольные вопросы
- •Методические указания
- •Пример программы
- •Контрольные вопросы
- •Варианты заданий
- •Лабораторная работа № 11
- •4.Ответить на контрольные вопросы.
- •Лабораторная работа № 12 описание класса по заданной предметной области
- •Программа работы
- •4. Ответить на контрольные вопросы.
- •Методические указания
- •Пример программы
- •Контрольные вопросы
- •Варианты заданий
- •Лабораторная работа № 13 создание связного списка
- •Программа работы
- •7. Ответить на контрольные вопросы.
- •Методические указания
- •Варианты заданий
- •4. Ответить на контрольные вопросы.
- •5. Составить отчёт.
- •Пример программы
- •Контрольные вопросы
- •Варианты заданий
- •Лабораторная работа n 15 множественное наследование
- •Программа работы
- •3. Ответить на контрольные вопросы.
- •4. Составить отчёт. Методические указания
- •Классом z. Пример программы
- •Контрольные вопросы
- •Варианты заданий
Лабораторная работа № 13 создание связного списка
Цель работы: научиться создавать связный список
данных типа структура.
Программа работы
1. Описать массив структур или классов, подобный структурам или классам, описанным в лабораторной работе № 12.
2. Записать данные в файл. Прочитать из файла в связный список.
3. Составить программу заполнения связного списка.
4. Вывести список на экран.
5. Вставить в список дополнительную структуру.
6. Вывести на экран измененный список.
7. Ответить на контрольные вопросы.
8. Составить отчет.
Методические указания
Связный список организуется в динамической памяти. Для размещения любого элемента в динамической памяти он должен в своем описании иметь указатели, первый из которых должен содержать адрес предыдущего элемента списка, а второй - адрес следующего элемента списка. Первый и последний элементы должны иметь значение NULL; первый - в указателе с именем "предыдущий", а последний - в указателе "следующий". Ниже приведен пример организации связного списка из данных, читаемых из файла с именем "struct.dat".
Пример связного списка
#include<iostream>
#include<io>
#include<сstdarg>
#include<сstdio>
#include<сstdlib>
#include<fstream>
Using namespace std;
struct b
{
int w;
struct b *p;
};
int main()
{
int n,i,a[100];
struct b *r;
struct b *beg=NULL;
struct b *end=NULL;
ifstream in("struct.dat");
cin>>n; //ввод количества данных, читаемых из файла
for(i=0;i<n;i++)
{
r=(struct b*)malloc(sizeof(struct b));
in>>a[i];
r->w=a[i];
if(end->p==eof)
{
free(r);
break;
}
if(beg==NULL && end==NULL)
beg=r;
else
end->p=r;
end=r;
end->p=NULL;
}
cout<<"\nspisoc:\n";
r=beg;
while(r!=NULL)
{
cout<<"\n"<<r->w;
r=r->p;
}
System(“pause”);
}
Результатом работы программы будут данные, выведенные на экран вертикально.
Контрольные вопросы
1. Какую роль играет указатель this?
2. Какие особенности имеют переменные при описании их ключевым словом static?
3. Назовите способы описания компонентных функций.
4. Как описываются пременные типа class?
5. Для чего используются указатели prev и next?
Варианты заданий
1. Из файла читать данные целого типа и организовать связный список.
2. Описать структуру " студенты группы " и организовать из этих данных связный список.
3. Описать структуру из чисел целого типа, чисел с плавающей точкой и строки символов; создать связный список.
4. Описать структуру из чисел целого типа и чисел с плавающей точкой; организовать связный список.
5. Из файла читать данные с плавающей точкой и создать связный список.
6. Из файла читать слова и организовать из них связный список.
Описать структуру с данными "студент, результаты экзаменов" и создать связный список.
Лабораторная работа № 14
РАБОТА С ФАЙЛОМ, СТРУКТУРАМИ И ОБЪЕДИНЕНИЯМИ ДАННЫХ
Цель работы: научиться писать перегруженные операции записи в файл структур.
Программа работы
1. Описать структуру, в которую входят целые числа, числа с плавающей точкой и строки символов.
2. Написать перегруженную операцию << для записи в файл данных структуры.
3. Описать массив структур и записать их в файл с помощью перегруженной операции <<.
