Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 07.10.2014
Сообщений: 2
1

Сортировка односвязного списка

10.06.2015, 05:50. Просмотров 376. Ответов 0
Метки нет (Все метки)

Помогите пожалуйста!!! Все работает кроме сортировки . Нужно отсортировать по году издания книги , без разницы в каком порядке .
Выдает вот такую ошибку
Сортировка односвязного списка

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#include "stdafx.h"
#include <iostream>
#include <cstring>
#include <conio.h>
using namespace std;
 
struct BOOK
{
    char author[20];
    char name[20];
    int year;
    int digit;
};
struct list
{
    BOOK info;
    list *next;
};
list *PH, *C, *PT;
int main(void)
{
    setlocale(LC_ALL, "rus");
    int i, n;
    cout << "Введите кол-во книг: ";
    cin >> n;
    PH = 0;
    for (i = 0; i < n; i++)
    {
        if (PH == 0)
        {
            PH = new list;
            cout << "Введите фамилию автора: ";
            cin >> PH->info.author;
            cout << "Введите название книги: ";
            cin >> PH->info.name;
            cout << "Введите год книги: ";
            cin >> PH->info.year;
            cout << "Введите число копий  книги: ";
            cin >> PH->info.digit;
            PH->next = 0;
        }
        else
        {
            C = PH;
            while (C->next != 0)
                C = C->next;
            C->next = new list;
            C = C->next;
            cout << "Введите фамилию автора: ";
            cin >> C->info.author;
            cout << "Введите название книги: ";
            cin >> C->info.name;
            cout << "Введите год книги: ";
            cin >> C->info.year;
            cout << "Введите число копий  книги: ";
            cin >> C->info.digit;
            C->next = 0;
        }
    }
    PT = C;
    list *P, *N;
    while (PT != PH)
    {
        for (P = PH; P->next != PT; P = P->next)
        if (P->next->info.year > P->next->next->info.year)
        {
            N = P->next->next;
            P->next = N->next;
            N->next = P->next;
            P->next = N;
        }
        PT = P;
    }
    char nm[20];
    cout << "Введите название книги которую хотите удалить: ";
    cin >> nm;
    {
        if (strcmp(PH->info.name, nm) == 0)
        {
            C = PH->next;
            delete PH;
            PH = C;
        }
        else
        {
            for (P = PH; strcmp(P->next->info.name, nm);
                P = P->next); {}
            C = P->next->next;
            delete P->next;
            P->next = C;
        }
    }
    for (C = PH; C != 0; C = C->next)
    {
        cout << C->info.author << endl;
        cout << C->info.name << endl;
        cout << C->info.year << endl;
        cout << C->info.digit << endl;
    }
    _getch();
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.06.2015, 05:50
Ответы с готовыми решениями:

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

Сортировка односвязного списка
Помогите пишу курсач сделал все ф-ции кроме сортировки в голову не приходит как что не пробовал без...

Сортировка односвязного списка
Доброго времени суток. Третий день пытаюсь понять как мне отсортировать сведения структуры,...

Сортировка односвязного списка
Прошу сразу не ругаться ,знаю что на форуме миллион разных кодов сортировки ,но я не понимаю как их...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.06.2015, 05:50

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Сортировка односвязного списка
В условии задачи нужно считать из файла неопределенное количество студентов и занести их в...

Сортировка односвязного списка
Здравствуйте уважаемые киберфорумщики! Нужна срочная помощь!!! В общем у меня есть задача которую...

Сортировка односвязного списка
Как можно реализовать сортировку(быструю и пузырьковою в виде функций) структуры односвязного...

Сортировка односвязного списка
Добрый день форумчанам! Есть задача но не знаю как написать ее так как не знаю динамического...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.