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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
alexminin007
9 / 9 / 1
Регистрация: 22.10.2012
Сообщений: 117
#1

Связной список в Си++ - C++

11.11.2012, 13:08. Просмотров 1132. Ответов 3
Метки нет (Все метки)

Помогите организовать связной список.
Здание:Организовать связной список, хранящий фамилии по алфовиту и оклады 10-ти сотрудников отдела. Оклад - вещественное число с двумя знаками после запятой из диапозона от 800 до 3000.

я так думаю данные лучше записать как константу.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.11.2012, 13:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Связной список в Си++ (C++):

Связной список - C++
Вывод не работает, помогите найти проблему и можно как-нибудь через freopen осуществить ввод? #include<iostream> #include <stdio.h> ...

Построить связной список - C++
Построить связной список, содержащий в качестве данных информацию о студентах: № зачетной книжки, Фамилия, Имя, Отчество, Дата рождения,...

Связной список / дерево - C++
Здравствуйте, нужна помощь с программой. Задание прикрепляю. Буду благодарен за любую помощь. Сдавать скоро, а идей по реализации вообще...

Связной список и сортировка - C++
Помогите написать прогу: Реализующую связный список с информацией о сотрудниках и отображающую список в порядке возрастания возраста...

Не получается очистить связной список - C++
Добрый день, не получается очистить двусвязный список, деструктору посылается адрес первого элемента списка. Происходит ошибка обращения...

Указатели, связной список (Linked List) и динамическое выделение памяти - C++
Я вообще не понимаю как сделать. Ребят! Помогите, как сможете! /* Написать связной список используя структуры и функции Позволить...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
cergew
Крутой форумчанин
146 / 146 / 8
Регистрация: 09.01.2011
Сообщений: 298
11.11.2012, 13:31 #2
Цитата Сообщение от alexminin007 Посмотреть сообщение
Помогите организовать связной список.
C++
1
2
3
4
5
struct List {
    char lastname[30];
    double salary;
    List *next;
};
дерзайте! в любом учебнике описано как создавать список, не ленитесь прочтите!
0
alexminin007
9 / 9 / 1
Регистрация: 22.10.2012
Сообщений: 117
13.11.2012, 06:38  [ТС] #3
вот что у меня получилось по лекциям, в задании ещё много заданий, мне надо главное правельно создать связной список
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
#include <stdio.h>
#include <stdlib.h>
#include <tchar.h>
//---------------------------------------------------------------------------
 
#pragma argsused
 
 
struct stack
{
    char            data;
    struct stack*   next;
};
 
struct stack*   push(struct stack*, char);
char            pop(struct stack**);
void            del(struct stack**);
 
char openingP(char);
int checkP(const char*);
 
int _tmain(int argc, _TCHAR* argv[])
{
    if(argc == 1)
    {
        fprintf(stderr, "Использование: %s Выражение...\n", argv[0]);
        exit(1);
    }
 
    for(size_t i = 1; i < argc; ++i)
        printf("Расстановка скобок в выражении \'%s\': %s\n",
                argv[i], (checkP(argv[i]) ? "правильная" : "неправильная"));
 
    exit(0);
}
 
struct stack* push(struct stack* stk, char c)
{
    struct stack* newNode;
    if(!(newNode = (struct stack*) malloc(sizeof(struct stack))))
    {
        fprintf(stderr, "malloc: erorr\n");
        exit(2);
    }
    newNode->data = c;
    newNode->next = stk;
    return newNode;
}
 
char pop(struct stack** stk)
{
    if(!stk)
    {
        fprintf(stderr, "pop: stec puct\n");
        exit(3);
    }
    char retVal = (*stk)->data;
    struct stack* delNode = *stk;
    *stk = (*stk)->next;
    free(delNode);
    return retVal;
}
 
void del(struct stack** stk)
{
    while(*stk)
    {
        struct stack* delNode = *stk;
        *stk = (*stk)->next;
        free(delNode);
    }
}
 
char openingP(char c)
{
    switch(c)
    {
    case '}':
        return '{';
    case ')':
        return '(';
    case ']':
        return '[';
    }
    return 0;
}
 
int checkP(const char* str)
{
    struct stack* stk = NULL;
    while(*str)
    {
        if((*str == '{') || (*str == '(') || (*str == '['))
            stk = push(stk, *str++);
        else if((*str == '}') || (*str == ')') || (*str == ']'))
        {
            char o = openingP(*str++);
 
            if(stk == NULL)
                return 0;
            else if(pop(&stk) != o)
            {
                del(&stk);
                return 0;
            }
        }
        else
            ++str;
    }
    if(stk != NULL)
    {
        del(&stk);
        return 0;
    }
    return 1;
}
 
 
 
 
 
//---------------------------------------------------------------------------
0
XRuZzz
Антикодер
676 / 577 / 28
Регистрация: 15.09.2012
Сообщений: 2,523
13.11.2012, 14:14 #4
ну если по хорошему то лучше оформить его шаблоном в виде класса, как библиотеке STL. ну и вместо malloc на C++ обычно используют new.
У Дейтала в книге есть учебные примеры списка.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2012, 14:14
Привет! Вот еще темы с ответами:

Необходимо создать связной список с записью в файл и восстановлением из файла - C++
Народ выручайте. В задании необходимо создать связной список с записью в файл и восстановлением из файла. Со списком я более-менее...

Создать список L3 из элементов, входящих и в список L1 и в список L2 - C++
создать список л3 из элементов входящих и в список л1 и в список л2

3 класса: список, стек(как список), очередь(как список) - C++
препод дал задание: написать 3 класса (список, стек, очередь), методы: вывод, добавление, удаление. Использовать при обращении указатель...

Список: связный список, в котором информация о книгах сортируется по убыванию стоимости. - C++
Друзья помогите с реализацией списка. Нужно запрограммировать связный список, в котором информация о книгах сортируется по убыванию...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
13.11.2012, 14:14
Ответ Создать тему
Опции темы

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