Программирование на С

  • Просмотров 1080
  • Скачиваний 185
  • Размер файла 40
    Кб

МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ. МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННО-ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ им. К.Э. ЦИОЛКОВКОГО КАФЕДРА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ Курсовая работа второго курса второго семестра. Руководитель: Чернадский Дата сдачи: _____________ Подпись: _____________ Студент: Лицентов Д.Б. Группа: 3ИТ-2-26 Москва 1998 Постановка задачи. Необходимо реализовать список вида: Техническое

описание программы. В программе предусмотрена работа со списком, которая включает в себя: 1.   Создание нового вписка; 2.   Добавление элемента в список; 3.   Вывод списка на дисплей; 4.   Сохранение данных списка в файл; 5.   Читение данных из файла; 6.   Удаление списка из памяти компьютера; 7.   Поиск элемента в списке; 8.   Сортировка списка; 9.   Удаление элемента списка. Спецификация

программы. Ввод данных в программу может осуществляться двумя спосабами: ввод с клавиатуры или из файла. Для работы с файлом необходимо на соответствующий запрос программы ввести имя файла, из которого будут взяты данные для построения списка. Для нормальной работы программы требуется PC совместимый компьютер и компилятор Borland 3.01 и выше. При использование иного сочетая характеристик системы на которой будет тестироваться

программа возможны некоторые расхождения с результатами теста, но в основном ничего страшного произойти не должно. Текст программы. #include <iostream.h> #include <fstream.h> class List {struct Tree {int Body; Tree *LP; Tree *RP; Tree(int Bdy=0) {Body=Bdy; LP=NULL; RP=NULL;} ~Tree() {Body=0; LP=NULL; RP=NULL;} }; public: List(int Digit=0); Tree *Root; List *LNext; List *LPrev; }; List::List(int Digit) {Root=NULL; for (int i=Digit*10; i<Digit*10+10; i++) {Tree *PTree; PTree=new Tree(i); PTree->LP=NULL; PTree->RP=NULL; if (Root==NULL) Root=PTree; else {Tree *PTree1=Root; do {if (PTree1->LP!=NULL) PTree1=PTree1->LP;} while (PTree1->LP!=NULL);

PTree1->LP=PTree; PTree=NULL; PTree1=NULL; } } } class TreeWork : private List {public: void TreeWorkStart(); private: int ElementQuantity; int Mass; int i; List *BegP; List *PList; int MainMenu(); int Work(int Task); int MakeNewList(); int AddElements(); int PrintList(); void EraseList(); int DeleteElement(); int FindElement(); int SubMenu(); int SubWork(int Task); int SortByIncrease(); int SortByDecrease(); int SaveList(); int OpenList(); protected: void GoThroughTree(Tree *L); void Erase(Tree *L); }; int TreeWork::MainMenu() {cout<<endl<<"Main Menu:"<<endl<<endl; cout<<" 1. Make New List." <<endl; cout<<" 2. Add Element." <<endl; cout<<" 3. Print List." <<endl;