Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
1 / 1 / 0
Регистрация: 15.10.2015
Сообщений: 32
1

Реализовать в виде односвязного списка

18.01.2017, 00:01. Показов 1526. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Туристическое агентство содержит список клиентов. Создайте массив структур «Клиенты», структура содержит идентификационный номер клиента, ФИО, стоимость путевки, место отдыха (реализовать в виде односвязного списка)
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.01.2017, 00:01
Ответы с готовыми решениями:

Реализовать линейный список на основе односвязного линейного списка, определяемого своим началом
Есть модуль, реализующий линейный список на основе односвязного линейного списка, определяемого своим началом. Завершить его реализацию. ...

Реализовать массив в виде однонаправленного списка
Задания по предмету «Программирование дополнительные главы языка Си» нужна программа и пояснительная записка Массив реализовать...

Распечатать многочлен, заданный в виде односвязного списка, в обычном виде
Люди помогите пожалуйста. Вообще не знаю как подступиться к задаче. Заранее спасибо! Многочлен от одной переменной Х можно представить...

1
 Аватар для HighPredator
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
18.01.2017, 10:39 2
Лучший ответ Сообщение было отмечено Pavel6025 как решение

Решение

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
127
128
129
130
131
132
133
#include <stdio.h>
#include <stdlib.h>
 
#define MAX_LOCATION_LENGTH     128
#define MAX_PERSON_NAME_LENGTH  64
 
struct Voucher
{
  double price;
  char location[MAX_LOCATION_LENGTH + 1];
};
 
struct Client
{
  unsigned int id;
  char surname[MAX_PERSON_NAME_LENGTH + 1];
  char name[MAX_PERSON_NAME_LENGTH + 1];
  struct Voucher voucher;
};
 
struct OneWayList
{
  struct Client clientData;
  struct OneWayList* next;
};
 
void AddToList(struct OneWayList** const rootPtr, const struct Client client)
{
  if (*rootPtr == NULL)
  {    
    *rootPtr = malloc(sizeof(**rootPtr));
    
    (*rootPtr)->clientData = client;
    (*rootPtr)->next = NULL;
  }
  else
  {
    struct OneWayList* p = *rootPtr;  
    
    while (p->next != NULL) p = p->next;
    
    p->next = malloc(sizeof(*p));
    
    p->next->clientData = client;
    p->next->next = NULL;
  }
}
 
void PrintList(const struct OneWayList* const root)
{
  const struct OneWayList* p = root;
  
  int i = 0;
  
  printf("===== List values: =====\n");
  
  while (p != NULL)
  {
    printf("Client %3d:\n"
      "  ID: %u\n"
      "  Name: %s\n"
      "  Surname: %s\n"
      "  Voucher data:\n"
      "    location: %s\n"
      "    price: %f\n",
      ++i,
      p->clientData.id,
      p->clientData.name,
      p->clientData.surname,
      p->clientData.voucher.location,
      p->clientData.voucher.price);
      
    p = p->next;
  }
}
 
void ClearList(struct OneWayList** rootPtr)
{
  while (*rootPtr != NULL)
  {
    struct OneWayList* p = (*rootPtr)->next;
    free(*rootPtr);
    *rootPtr = p;
  }
}
 
int main(void)
{
  struct OneWayList* clientListRoot = NULL;
  
  struct Client clientIvanov = {
    .id = 119,
    .surname = "Ivanov",
    .name = "Ivan",
    .voucher.price = 12.45,
    .voucher.location = "Thailand"
  };
  
  struct Client clientPetrov = {
    .id = 187256,
    .surname = "Petrov",
    .name = "Sergey",
    .voucher.price = 9.5,
    .voucher.location = "India"
  };
  
  struct Client clientSidorov = {
    .id = 11223,
    .surname = "Sidorov",
    .name = "Oleg",
    .voucher.price = 112.99,
    .voucher.location = "Florida, USA"
  };
  
  struct Client clientSokolova = {
    .id = 998,
    .surname = "Sokolova",
    .name = "Oksana",
    .voucher.price = 229.99,
    .voucher.location = "Mallorca"
  };
  
  AddToList(&clientListRoot, clientIvanov);
  AddToList(&clientListRoot, clientPetrov);
  AddToList(&clientListRoot, clientSidorov);
  AddToList(&clientListRoot, clientSokolova);
  
  PrintList(clientListRoot);
  
  ClearList(&clientListRoot);
  
  return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.01.2017, 10:39
Помогаю со студенческими работами здесь

Реализовать очередь на базе односвязного списка
собственно, весь вопрос содержится в теме. Помогите, пожалуйста, а то я совсем не понимаю как это сделать...

Реализовать стек с использованием односвязного списка
Народ, у меня в лабораторной работе задание: реализовать стек с помощью односвязного списка. Я не очень понял, что это за стеки и списки и...

Реализовать очередь с помощью односвязного списка
Утро доброе, есть очередь реализованная с помощью массива. А нужно сделать, с помощью односвязного списка. Помогите пожалуйста переделать) ...

Реализовать операцию удаления элемента из односвязного списка
Реализовать операцию удаления элемента из односвязного списка.

Реализовать класс односвязного списка действительных чисел
Ребят, помогите, пожалуйста, все методы перепробовал, ничего не получилось, одна надежда на Вас! Реализовать класс односвязного списка...


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

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

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Новые блоги и статьи
Django или Flask: что выбрать для веб-разработки на Python
py-thonny 13.03.2025
Django – это высокоуровневый фреймворк, который придерживается философии "всё включено". Он предоставляет разработчику готовые решения для большинства типичных задач веб-разработки: от аутентификации. . .
Непрерывное развертывание в Java с Kubernetes
Javaican 13.03.2025
Чем так привлекателен Kubernetes для развертывания Java-приложений? Этот оркестратор контейнеров позволяет автоматизировать развертывание, масштабирование и управление контейнеризированными. . .
Предотвращение XSS, CSRF и SQL-инъекций в JavaScript
run.dev 13.03.2025
JavaScript занимает первые позиции среди языков веб-разработки, но его распространенность делает его привлекательной целью для злоумышленников. Межсайтовый скриптинг (XSS), межсайтовая подделка. . .
PHP 8: JIT-компиляция и улучшение производительно­сти
Jason-Webb 13.03.2025
PHP никогда не славился своей скоростью. Многие сталкивались с проблемами производительности при работе со сложными вычислениями или обработкой больших объемов данных. Традиционная модель выполнения. . .
Сериализация данных с Apache Avro в Kafka
Javaican 12.03.2025
Apache Kafka стала одним из ключевых решений для работы с большими потоками данных. Однако с ростом объемов передаваемых данных возникает проблема: как эффективно сериализовать и десериализовать. . .
Создание потребителей Kafka с помощью Reactor Kafka
Javaican 12.03.2025
Reactor Kafka — это библиотека, объединяющая Apache Kafka с реактивным программированием на базе Project Reactor. Такое сочетание позволяет строить неблокирующие, асинхронные приложения с контролем. . .
Ключевые слова Python
py-thonny 12.03.2025
Ключевые слова — не просто часть синтаксиса, а настоящий каркас языка, определяющий его возможности и ограничения. В Python существует 35 ключевых слов и 4 так называемых "мягких ключевых слова" —. . .
Сортировка в Python: Подробный обзор sorted() и .sort()
py-thonny 12.03.2025
В Python для решения задач сортировки предусмотрены два основных инструмента: функция sorted() и метод . sort(). На первый взгляд, различия между ними могут показаться незначительными, но когда дело. . .
Автоматизация задач в HCL Notes
Mr. Docker 12.03.2025
Если вы когда-нибудь работали с HCL Notes (раньше известным как Lotus Notes), то наверняка испытали смешанные чувства. С одной стороны, это мощная платформа для корпоративных приложений, с другой —. . .
Установка и настройка HCL Notes
Mr. Docker 12.03.2025
HCL Notes (ранее известный как IBM Notes и Lotus Notes) — это не просто почтовый клиент, а целая корпоративная платформа для коллективной работы. Если вы когда-нибудь попадали в компанию, где все. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер