Форум программистов, компьютерный форум CyberForum.ru

Отсортировать динамический односвязный список - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Цифровой счетчик, добавить шаг счетчика http://www.cyberforum.ru/cpp-beginners/thread1129483.html
Цифровой счетчик – это целочисленная переменная с ограниченным диапазоном значений, которая сбрасывается при достижении максимального значения. Примеры использования: цифровые часы, счетчик метров в индикаторе пробега. Опиши-те класс для такого счетчика. Предусмотрите возможность установления минимальных и максимальных значений, увеличения значения счетчика на единицу, возвращения текущего...
C++ в чем ошибка кода 3 ? void main(int a, int b) { cout << a << " " << b; } void main(float f) { // тут cout << f << endl; } http://www.cyberforum.ru/cpp-beginners/thread1129473.html
C++ С помощью структуры определить группу из 7 человек, имя, пол и рост
С помощью структуры определить группу из 7 человек.имя пол и рост. вывести самую высокую девочку из группы #include<iostream> #include<string> using namespace std; struct det {string name; char sex; int rost; };
Найти ошибку в приведенном коде C++
void Print(int a) { cout << "int : "<< a; } void Print (float b) { cout << " Float : " << b; } void main()
C++ Нуждаюсь в объяснении функций http://www.cyberforum.ru/cpp-beginners/thread1129445.html
Кто может человеческим языком, объяснить что делают эти функции: cin.peek() cin.clear() cin.get() getch() Интересует и "научное" пояснения. п.с. может посоветуйте книгу, в которой понятно описывают функции С++.
C++ Что означает '\0' for (i = 0; line != '\0'; i++) подробнее

Показать сообщение отдельно
evelolka
 Аватар для evelolka
2 / 2 / 0
Регистрация: 25.10.2013
Сообщений: 108
25.03.2014, 18:16     Отсортировать динамический односвязный список
его можно сортировать с помощью указателей. а как не разберусь
помогите подправить


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
#include<Windows.h>
#include <clocale>
#include <conio.h>
#include<iostream>
using namespace std;
struct WORKER
    {
        char family[20], name[20], dolzhnost[20];
        int god;
        WORKER * next;
    };
    WORKER * head = 0;
    WORKER * current = 0;
    char c;
    int s=0;
int main()
{
    setlocale(LC_ALL,"RUS");
   SetConsoleCP(1251);// установка кодовой страницы win-cp 1251 в поток ввода
   SetConsoleOutputCP(1251); // установка кодовой страницы win-cp 1251 в поток вывода
    cout<<"ввести данные ? (д/н)";
    c = _getche();
    
    while(c == 'д')
        {s++;
            if (head!=0) 
                { 
                    current -> next = new WORKER; 
                    current = current -> next; 
                }
            else     
                { 
                    head = new WORKER; 
                    current = head;   
                }
 
            cout << "\nВведите имя\n";
            cin >> current -> name;
            cout << "Введите фамилию\n";
            cin >> current -> family;
            cout << "Введите должность\n";
            cin >> current -> dolzhnost;
            cout << "Введите год поступления на работу\n";
            cin >> current -> god;
            current -> next = 0;
            cout << "Ввести данные?(да/нет)\n";
            c = _getche();
        }
 
    
    //////////////////////////////////////сортировка  по году принятия на работу////////////////////////////////////////////////
    current=head;
    WORKER*tmp = new WORKER;
    if(current != 0)
        {
            while(current -> next != 0)
                {
                    do
                    {
                        if( (current -> god) > (current -> next -> god) )
                            {
                                tmp = current;
                                current = current -> next;
                                current -> next = tmp;
                            }
                    }while(current -> next != 0);
                    current = current -> next;
                }
        }
    //////////////////////////////////////////////////////////////////////////////////////////////
    if(head)
    {
        current = head;
        while( current != 0 )
        {
            cout<<"\nимя- "<<current->name<<"\n"<<"фамилия- "<<current->family<<"\n"<<"Должность- "<<current->dolzhnost<<"\n"<<"Год поступления- "<<current->god<<"\n";
        current=current->next;
        }
    }
    else
        cout<<"\nничего не введено\n";
system("pause");
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru