Внимание! Студландия не продает дипломы, аттестаты и иные документы об образовании. Наши специалисты оказывают услуги консультирования в области образования: в сборе информации, ее обработке, структурировании и оформления в соответствии с ГОСТом. Все услуги на сайте предоставляются исключительно в рамках законодательства РФ.
Нужна индивидуальная работа?
Подберем литературу
Поможем справиться с любым заданием
Подготовим презентацию и речь
Оформим готовую работу
Узнать стоимость своей работы
Дарим 200 руб.
на первый
заказ

Решение задач на тему: Данной курсовой работе представлена реализация программы, для обработки динамической структуры

Выполнил эсперт:

Аватар пользователя Наталья Титова
Наталья Титова
Купить за 100 руб.
Страниц
21
Размер файла
122.41 КБ
Просмотров
12
Покупок
0
Данном отчёте представлено решение задачи с помощью языка программирования С.В первом разделе отчёта представлена постановка задачи. Второй раздел содержит метод решения программы. Третий раздел

Введение

В данном отчёте представлено решение задачи с помощью языка программирования С.

В первом разделе отчёта представлена постановка задачи. Второй раздел содержит метод решения программы. Третий раздел отчёта - алгоритм работы программы, включая алгоритм работы интерфейса программы и десяти основных подпрограмм. В четвёртом разделе рассматривается подробное руководство пользователя. Пятый раздел содержит анализ результатов. В листинге (приложение Д) представлен полный текст программы с комментариями.

Оглавление

- Введение

- Постановка задачи

- Метод решения

- Общая схема работы программы

- Метод сортировки

- Разработка алгоритмов решения задачи

- Общая схема алгоритма

- Стандартные процедуры и функции, используемые в программе

- Описание работы пользовательских подпрограмм

- Описание работы подпрограммы vvodSp

- Описание работы подпрограммы loadIT

- Описание работы подпрограммы sort

- Описание работы подпрограммы vivodSp

- Описание работы подпрограммы dobEl

- Описание работы подпрограммы delel

- Описание работы подпрограммы vidacha

- Описание работы подпрограммы vozvrat

- Описание работы подпрограммы saveIT

- Описание работы основной программы

- Руководство пользователя

- Анализ результатов Заключение

- Список литературы

- Приложения

Список литературы

cur2=cur2->next; //аналогично

printf("Было удалено %d книг данного автора",n);

void vozvrat(еl *cur,еl *cur2) //возвращение элемента

if(cur==NULL) printf("Перед тем, как производить поиск в списке, необходимо его создать!");

printf("Введите интересующего Вас автора:\n");

printf("Введите интересующую Вас книгу:\n");

if((strcmp(cur->inf.avt,iskA)==0)&&(strcmp(cur->inf.nazv,iskN)==0)&&cur2->inf.kol>0) //если есть книги на руках (кол-во>0)

cur->inf.kol++; //увеличивается в первом списке количество

cur2->inf.kol--; //уменьшается во втором

printf("Книга возвращена!");

else if((strcmp(cur->inf.avt,iskA)==0)&&(strcmp(cur->inf.nazv,iskN)==0)&&cur2->inf.kol<=0) //если книг на руках нет

printf("Все свои книги дома! Чужих нам не надо)))");

if(n==0) printf("К сожалению, ни одной такой книги не найдено!\n");

void sort(еl *top) //сортировка

int к=1; //вспомогательный элемент, показывает были ли перестановки или нет

еl* cur; //указатель на текущий элемент

book dop; //переменная для временного хранения данных (используется при сортировке)

if(top==NULL) printf("Перед тем, как сортировать список, необходимо его создать!");

while(к!=0) //пока не будет перестановок

к=0; //перстановок нет

for(cur=top;cur->next!=NULL;cur=cur->next) //пока указатель на следующий элемент у текущего не равен NULL

if(strcmp(cur->inf.avt,cur->next->inf.avt)>0) //если следующий элемент меньше, чем текущий

dop=cur->inf; //занесение в буфер данных текущего элемента

cur->inf=cur->next->inf; //переписывание в текущий данные следующего

cur->next->inf=dop; //переписывание в следующий данные из буфера

к=1; //перестановки есть

void saveIT(еl *cur,еl *cur2) //сохранение в файл

FILE *f1,*f2; //файлы

f1=fopen("Base.txt","wb"); //файл для первого списка

f2=fopen("Out.txt","wb"); //для второго

if(f1==NULL||f2==NULL) printf("Чтоё-то не грузится: глюк)");

while(cur!=NULL) //пока не конец списка

fwrite(&cur->inf,sizeof(еl),1,f1); //запись данных текущего элемента в файл

fwrite(&cur2->inf,sizeof(еl),1,f2); //то же

cur=cur->next; //переход к следующему элементу

cur2=cur2->next; //то же

printf("Списки сохранены успешно!");

fcloseall(); //закрытие файлов

void loadIT(еl **top,еl **top2) //чтение файлов

еl *cur,*рr,*tail,*tail2,*cur2; //указатели

FILE *f1,*f2; //файлы

*top2=*top=tail=tail2=NULL; //обнуление ссылок на хвост и вершину

f1=fopen("Base.txt","rb"); //открытие файла Base.txt

f2=fopen("Out.txt","rb"); //открытие файла Out.txt

if(f1==NULL||f2==NULL) printf("Чтоё-то не грузится: глюк)");//если файлов нет

while(!feof(f1)) //пока не конец файла

cur=(еl*)malloc(sizeof(еl)); //выделение памяти под новый элемент (далее текущий)

cur->next=NULL; //обнуление указателя на следующий элемент текущего элемента

cur->pred=tail; //присваивание указателя на предыдущий элемент текущего элемента хвосту списка

if((*top)==NULL) (*top)=cur; //если указатель на начало списка пуст, то указателем на начало списка становится текущий элемент

else tail->next=cur; //если нет, то указателем на хвост списка становится текущий элемент

tail=cur; //указатель на хвост становится приравнивается текущему элементу

cur2=(еl*)malloc(sizeof(еl)); //аналогично для второго элемента

fread(&cur->inf,sizeof(еl),1,f1); //считывание с файла

fcloseall(); //закрываем файлы

printf("Списки успешно загружены из файлов!");

void main() //основная программа

printf("Введите номер пункта для выполнения:\n");

printf("1.Заполнить список\n");

printf("2.Загрузить списки из файлов\n");

printf("3.Отсортировать текущий список\n");

printf("4.Вывести текущий список\n");

printf("5.Вывести текущий список выданных на руки книг\n");

printf("6.Добавить новый элемент\n");

printf("7.Удалить из списка книги заданного автора\n");

printf("8.Выдать книгу на руки\n");

printf("9.Вернуть книгу в библиотеку\n");

printf("10.Сохранить списки в файл\n");

printf("11.Выход из программы\n");

printf("Ваш выбор:\n");

printf("Такого пункта нет! Введите повторно:\n");

Как купить готовую работу?
Авторизоваться
или зарегистрироваться
в сервисе
Оплатить работу
удобным
способом
После оплаты
вы получите ссылку
на скачивание
Страниц
21
Размер файла
122.41 КБ
Просмотров
416
Покупок
0
Данной курсовой работе представлена реализация программы, для обработки динамической структуры
Купить за 100 руб.
Похожие работы
Сумма к оплате
500 руб.
Купить
Заказать
индивидуальную работу
Гарантия 21 день
Работа 100% по ваши требованиям
от 1 000 руб.
Заказать
Прочие работы по предмету
Сумма к оплате
500 руб.
Купить
Заказать
индивидуальную работу
Гарантия 21 день
Работа 100% по ваши требованиям
от 1 000 руб.
Заказать
103 972 студента обратились
к нам за прошлый год
2066 оценок
среднее 4.9 из 5
Алла Работа выполнена в срок, всё соответствует требованиям. Алла, огромное вам спасибо за помощь! Рекомендую!
Ольга Всё отлично, спасибо!
Дарья Благодарю за проделанную работу! Выполнено на высшем уровне)
Ольга Автор всегда на связи, сдано в срок, спасибо)
Сергей Благодарю за оперативное выполнение! Все отлично!
Людмила Отличная работа! Спасибо
Александр Благодарю Александра за профессионализм. Все четко и в срок.
Марина Спасибо за работу!
Ольга Все отлично, спасибо!
Марина Спасибо за работу!