Факультет ФСВТ Кафедра Вмис
Пояснительная записка
к курсовой работе по дисциплине:
«Алгоритмические языки и программирование»
на тему
«Создание и обработка динамического списка»
Выполнил: студент группы 02В2
Новокшонов М.С.
Руководитель: Данилина Н.П.
Проект защищен с оценкой ________
Пенза 2003
|
|
|
|
1. Постановка задачи
В данной курсовой работе необходимо на языке программирования написать программу, которая выполняет следующие действия:
o Создание однонаправленного динамического списка содержащего сведения о книгах
o Вывод данных однонаправленного динамического списка на экран
o Удаление первого элемента однонаправленного динамического списка.
o Перемена мест элементов однонаправленного динамического списка, которые заданы ключами.
Программу построить по процедурному принципу, пользовательский элемент оформить в виде меню.
3
2. Разработка метода решения задачи и его формализация
1) В данной программе будут использоваться следующие глобальные переменные:
n – массив 30 переменных типа char. Несет информацию о названии газеты.
s – массив 30 переменных типа char. Несет информацию о названии статьи
st – переменная типа int. Несет информацию о номере страницы.
Все эти переменные являются элементами структуры gaseta:
struct games {
char n[30];
char s[30];
int st;};
g – переменная типа gaseta. Несет полную информацию о газете.
n – указатель на структуру news.
Все эти переменные являются элементами структуры news:
struct news{
gaseta g;
news *n;};
un – указатель на структуру news. Несет информацию об адресе первого элемента однонаправленного динамического списка.
p – указатель на структуру news. Несет информацию об адресе текущего элемента однонаправленного динамического списка.
q – указатель на структуру news. Несет информацию об адресе последнего созданного элемента однонаправленного динамического списка.
news *un,*p,*q;
i – переменная типа int. Несет информацию о количестве элементов однонаправленного динамического списка.
int i;
4
2) Локальные переменные процедуры ввода данных:
j – переменная типа int. Эта переменная является параметром всех циклов используемых в данной процедуре.
int j;
3) Локальные переменные процедуры вывода данных:
j – переменная типа int. Эта переменная является параметром всех циклов используемых в данной процедуре.
int j;
4) Локальные переменные процедуры удаления первого элемента списка:
У данной процедуры нет локальных переменных.
5) Локальные переменные процедуры перемены мест элементов, которые заданы по названию:
j – переменная типа int. Эта переменная является одним параметром всех циклов используемых в данной процедуре.
int j;
k1 – переменная типа char. Несет информацию о названии первой газеты, место которой будем менять.
k1 – переменная типа cnar. Несет информацию о названии второй газеты, место которой будем менять.
char k1[30],k2[30];
p2 – указатель на структуру news. Несет информацию об адресе второго текущего элемента однонаправленного динамического списка.
news *p2;
c - переменная типа gaseta. Несет полную информацию об игре.
gaseta c;
5
6) Локальные переменные основной части программы:
a – переменная типа int. Несет информацию о текущей процедуре и является параметром цикла и оператора множественного выбора.
int a;
6
... Листинг программы представлен в приложении Д, а результаты работы программы в приложении Е. Заключение В процессе выполнения индивидуального задания и отчета по курсовой работе я ознакомился со способами обработки динамических структур данных. Анализируя полученное задание, я выбрал метод решения поставленной задачи, на основе которого получил алгоритмы в виде блок-схем (приложения А, Б, ...
... : M). Каждую дисциплину сдает множество студентов, поэтому связь между Дисциплины и Оценки также будет Один-ко-многим (1 : M). В результате получаем информационно-логическую модель базы данных, приведенную на Рис. 18 Студенты Дисциплины Преподаватели Оценки Рис. 18 Для создания логической модели нужно после создания, по крайней мере, структур таблиц в окне базы данных нужно ...
... строящий дерево. Структура этого дерева включает страницы двух типов – узловые, содержащие массивы ссылок на нижележащие страницы, и листовые, содержащие отсортированные списки данных. Такое дерево называется B+-деревом. Однако разбирать подробно реализацию B+-деревьев в этой статье я не буду. Реализация двухуровневого массива На практике в большинстве случаев достаточно двухуровневых массивов. ...
... Закрыть программу можно нажатием на кнопку «Закрыть» или F10. Заключение В квалификационной работе мы попытались раскрыть более полно и наглядно понятие линейного списка, однонаправленного и двунаправленного списков, стека, дека и очереди. Сформировать и закрепить познавательный интерес к данной теме у учащихся. Выявлять и развивать творческие способности в использовании полученного навыка при ...
0 комментариев