Связные списки

Автор работы: Пользователь скрыл имя, 28 Февраля 2013 в 16:22, курсовая работа

Краткое описание

C++ — компилируемый язык программирования общего назначения, сочетает свойства как высокоуровневых, так и низкоуровневых языков программирования. В сравнении с его предшественником — языком программирования C, — наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования. Название «язык программирования C++» происходит от языка программирования C, в котором унарный оператор ++ обозначает инкремент переменной.

Содержание работы

Введение……………………………………………………………………2
Теоретические сведения………………………………………………….. 3
Создание многосвязного списка…………………………………………. 9
Задание…………………………………………………………….. 9
Разработка алгоритма……………………………………………. 10
Разработка программы и результаты выполнения……………...13
Инструкция для пользователя…………………………………... 16
Заключение ………………………………………………………………. 17
Список используемой литературы……………………………………….18

Содержимое работы - 1 файл

Курсовая работа (Автосохраненный).docx

— 275.39 Кб (Скачать файл)

//создание интерфейса

y='y';

while(y=='y')

{

printf("\n Vvod upravlenia:\n");

n=0; p=s; p1=0;

c=getch();

while(c!='1')

{

if(c=='2')//down(вниз)

{

if(n==0)

{

if(p->down!=0)

{

printf("Vniz:\n");

p1=p->down;

n=1;

printf ("| %d |",p1->info);

}

else

printf("Pusto down\n");

}

}

if(c=='6')//right(вправо)

{

if(n==0)

{

if(p->right!=0)

{

printf("Vpravo:\n");

p=p->right;

}

else

printf("Pusto right\n");

}

if (n==1)

{

if (p1->next!=NULL)

{

p1=p1->next;

printf ("| %d |",p1->info);

}

else

printf("Pusto right\n");

}

}

if(c=='4')//left(влево)

{

if(n==0)

{

if(p->left!=0)

{

printf("Vlevo:\n");

p=p->left;

}

else

printf("Pusto left\n");

}

}

c=getch();

}

printf(" Продолжать? (y/n)");

y=getch();

}

}

return 0;

}

 

 

 

Результат выполнения:

 

 

 

 

 

 

 

 

 

  Программа отлажена  в Microsoft Visual Studio 2008.

      3.4. Инструкция пользователя

             Запустите программу. Появится командная строка, в которую следует ввести любое количество чисел, в любой последовательности. Обязательное условие – ввод чисел должен заканчиваться нулем. После ввода нажать «Enter». Управление программой осуществляется при помощи кнопок на клавиатуре:

    • Переход вправо – клавиша «6»
    • Переход влево – клавиша «4»
    • Переход вниз – клавиша «2»

Когда весь список будет  пройден, на экран будет выведено сообщение «Pusto right». По окончанию списка нажмите на клавишу «1». Далее появится вопрос: «Продолжить?», в ответ на который для выхода из программы используйте клавишу «n», для продолжения – «у». Язык – английский.

                            

 

 

 

 

 

 

 

 

 

 

 

 

 

4. Заключение

             Сильная сторона списков заключается в том, что с их помощью можно без проблем добавлять и удалять элементы, что гораздо труднее делать с помощью массивов. Также можно без проблем изменить размер списков, добавив/удалив новые узлы.

             У списков есть, конечно же, и слабые стороны. Получить доступ к какому-либо элементу не так просто. Необходимо пройти до этого элемента от начала списка, в то время как в массивах доступ к любому элементу можно получить с помощью индекса. Доступ к элементам списков происходит медленнее, чем к элементам массива, так как узлы списков хранятся в разных участках памяти. Кроме того, для хранения списков требуется больше памяти. В списках удобно хранить объекты больших сложных классов. Если имеется множество мелких объектов, будет эффективнее сохранить их в массиве.

             В ходе выполнения курсовой работы были получены основы разработки многосвязных списков. Была изучена среда разработки Microsoft Visual  Studio 2008. В результате работы была написана программа, которая строит списочную структуру, состоящую из кольцевого двунаправленного и однонаправленного списков, связанных между собой.

 

 

 

 

 

 

 

 

 

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

  • Карпов Б., Баранов Т. «С++: специальный справочник» - СПб.: Питер, 2001. — 480 с.:ил.
  • Культин Н. «С/С++ в задачах и примерах» - СПб.:БХВ-Петербург, 2002. — 288 с.
  • Павловская Т.А. “С/с++. Программирование на языке высокого уровня. - СПб.: Лидер, 2010. — 461 с.:ил.

http://life-prog.ru/view_struktura_dannih.php?id=14

http://saod.narod.ru/saod3/List003.html

http://shatalov.su/ru/articles/algorithms/list_1.php

http://www.sernam.ru/c_44.php

http://ru.wikipedia.org/wiki/%D1%E2%FF%E7%ED%FB%E9_%F1%EF%E8%F1%EE%EA

 


Информация о работе Связные списки