Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/141: Рейтинг темы: голосов - 141, средняя оценка - 4.60
4 / 4 / 4
Регистрация: 06.03.2011
Сообщений: 319

Создать односвязный список из структур

24.04.2011, 13:17. Показов 26617. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста..Сколько читаю ничего не понимаю(Большинство с классами...которые мы не изучали.
Понимаю что должно быть значение и указатель на следующий элемент.
Создаем структуру
C
1
2
3
4
5
struct node
{
int value;
node *next;
}
Как сформулировать всё дальше(надеюсь на помощь.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.04.2011, 13:17
Ответы с готовыми решениями:

Создать односвязный упорядоченный список
Здравствуйте, помогите пожалуйста, нужно написать программу. Вводим числа с клавиатуры и сразу упорядочиваем их.( всё это список ) не...

Создать односвязный список о книгах
Помогите реализовать односвязный список ... #include <stdio.h> #include <stdlib.h> #include <string.h> #include <locale.h>...

Создать и заполнить линейный односвязный список
Здравствуйте! Мне нужно создать и заполнить линейный односвязный список. Вот код, который у меня получился: #include <stdio.h> ...

5
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
24.04.2011, 13:24
yuliyayuliya28,

C
1
2
3
4
5
struct list
{
    struct node* head;
    struct node* tail;
};
Ну и дальше функции)
0
4 / 4 / 4
Регистрация: 06.03.2011
Сообщений: 319
24.04.2011, 13:35  [ТС]
Зачем ещё одна структура((((
0
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
24.04.2011, 13:43
Вот пара функций. Остальное сами.

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
#include <stdio.h>
#include <stdlib.h>
 
struct node
{
    int elem;
    struct node* next;
};
 
typedef struct node Node;
 
struct list
{
    Node* head;
    Node* tail;
};
 
typedef struct list List;
 
void initializeList(List* lst)
{
    lst->head = 0;
    lst->tail = 0;
}
 
void push_back(List* lst, int numb)
{
    Node* t = (Node*) malloc(sizeof(Node));
    t->elem = numb;
    t->next = 0;
    if(lst->head == 0)
    {
       lst->head = t;
       lst->tail = t;
       return;
    }
    lst->tail->next = t;
    lst->tail = t;
}
 
void print_list(const List* const lst)
{
    for(Node* tmp = lst->head; tmp; tmp = tmp->next)
        printf("%d\n", tmp->elem);
}
 
void free_list(List* lst)
{
    lst->tail = lst->head;
    while(lst->head)
    {
       lst->head = lst->head->next;
       free(lst->tail);
       lst->tail = lst->head;
    }
}
 
int main()
{
    List lst;
    initializeList(&lst);
    push_back(&lst, 10);
    push_back(&lst, 15);
    push_back(&lst, 25);
    push_back(&lst, 1);
    print_list(&lst);
    free_list(&lst);
}
Добавлено через 1 минуту
yuliyayuliya28, Для удобства. Очевидно же. Список - это структура данных, состоящая из узлов.
0
Программист
 Аватар для prZzZ
119 / 97 / 11
Регистрация: 22.03.2011
Сообщений: 244
24.04.2011, 13:49
Вот вам в помощь: http://lord-n.narod.ru/downloa... 2/2205.htm
Если возникнут проблемы - пишите...
0
4 / 4 / 4
Регистрация: 06.03.2011
Сообщений: 319
24.04.2011, 23:08  [ТС]
Немного попыталась разобраться.....но мой код не работает.....объясните пожалуйста что не так и как исправить....



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
#include "stdafx.h"
#include <conio.h>
#include "iostream"
#include <time.h>
 
 using namespace std;
 
struct node
{
    int value;
    node *next;int a;
}
 
void main(void);
{
srand(time(NULL));  
 
cin<<a<<endl;
 
    node* head;
    head= new node;
    head ->value=5;
    node* tmp;
    node* tmp1;
    tmp=head;
    for(int i=0;i<a;i++)
    {
        tmp1=new node;
        tmp1->value=rand()%10;
        tmp->next=tmp1;
        tmp1->next=NULL;
        tmp=tmp1;
    }
    for(head;tmp1!=NULL;tmp1->next)
        cout<<tmp1->value;
    getch();
 
}
Добавлено через 58 минут
С горем попалам список создала....получается удалить первый элемент......как удалить любой элемент из списка равный n?



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
#include "stdafx.h"
#include <conio.h>
#include "iostream"
#include <time.h>
 
using namespace std;
 
struct node
{
int value;
node *next;
};
 
void main (void)
{
int a;
int n;
srand(time(NULL));
 
cin>>a;
cin>>n;
cout<<endl;
 
node* head;
head= new node;
head ->value=5;
node* tmp;
node* tmp1;
tmp=head;
for(int i=0 ;i<a;i++)
{
tmp1=new node;
tmp1->value=rand()%10;
tmp->next=tmp1;
tmp1->next=NULL;
tmp=tmp1;
}
cout<<"Поидем дальше вывод...";
for(tmp1=head;tmp1!=NULL;tmp1=tmp1->next)
cout<<tmp1->value<<" ";
cout<<endl;
 
node*temp=head;//Удаляем первый элемент
  head = head->next;
  delete temp;
 
 
  for (tmp1=head; tmp1!=NULL;tmp1=tmp1->next)
      if (tmp1->value!=n) delete tmp1;
 
for(tmp1=head;tmp1!=NULL;tmp1=tmp1->next)
cout<<tmp1->value<<" ";
 
getch();
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.04.2011, 23:08
Помогаю со студенческими работами здесь

Из введенных слов создать односвязный кольцевой список
Доброй ночи Задача звучит так: Из введенных слов создать односвязный кольцевой список. Далее, создать список, организованный как стек, в...

Создать односвязный список и добавить в него элементы
помогите, пожалуйста. нужен код: создать односвязный список, тип информационного поля char*, добавить в список элементы с номерами 1,3,5 и...

Создать кольцевой односвязный список, элементы которого будут вводиться с клавиатуры
Нужно сделать кольцевой односвязный список, элементы которого будут вводиться с клавиатуры. Я новичок в Си, создал список, получил...

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

Испльзуя массив структур создать список
Помогите оооочень срочно пожалуста) если фастом дам денех) задача сама выглядит так: Используя массив структур, создать список студентов...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru