Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
4 / 4 / 0
Регистрация: 01.06.2013
Сообщений: 153
1

Подскажите, как правильно описать структуру и методы

28.11.2013, 18:36. Показов 450. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Мне нужно описать структуру ОЧЕРЕДИ, в инфополе которой будет строка максимум 20 символов, и методы к ней. Проверьте, что не так ?:

Добавлено через 12 минут
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
#include <iostream>
#include <cstdlib>
using namespace std;
//СТРУКТУРА БУДЕТ ЭЛЕМЕНТОМ СПИСКА
#define MAX_LEN 20
  struct Node //или просто Звено списка
    {
       char str[MAX_LEN];//инфо данные структуры
       Node *Next; //Указатель не следующее звено
    };
 
//КЛАСС СПИСОК
 
class List
{
    Node *Head,*Tail; //Указатели на начало списка и на конец
public:
     List():Head(NULL),Tail(NULL){}; //Инициализация указателей как пустых
     ~List(); //Деструктор для освобождения памяти от всего что будет
     void Add(char str[MAX_LEN]); //Функция заполнения структуры Node и добавления её в список как элемента
     void Show(); //Функция отображения списка List 
     void del(); //Функция изъятия элемента
 
 };
 
void List::Show()
{
    Node *temp=Head; //Временный указатель на начало списка
     while (temp!=NULL) //Пока в списке что-то встречается
     {
         cout<<temp->str[MAX_LEN]<<" "; //Выводим значения из списка на экран
         temp=temp->Next; //Сдвигаем указатель на начало на адрес следующего элемента
     }
    cout<<endl;
} 
 
List::~List() //ДЕСТРУКТОР ДЛЯ ОЧИСТКИ ПАМЯТИ
{
 Node *temp=Head; //Временный указатель на начало списка
 while (temp!=NULL) //Пока в списке что-то есть
 
   {
     temp=Head->Next; //Резерв адреса на следующий элемент списка
 
     delete Head;  //Освобождение памяти от первой структуры как элемента списка
 
     Head=temp;  //Сдвиг начала на следующий адрес, который берем из резерва
 
   } 
}
 
 
//ФУНКЦИЯ ЗАПОЛНЕНИЯ ИНФОРМАЦИОННЫХ ПОЛЕЙ СТРУКТУРЫ NODE И ДОБАВЛЕНИЯ ЭТОЙ СТРУКТУРЫ В СПИСОК
 
void List::Add(char str[MAX_LEN])
{
    Node *temp=new Node; //Выделение памяти для нового звена списка
    temp->str[MAX_LEN]=str[MAX_LEN]; //Временное запоминание принятого параметра x
    temp->Next=NULL; //Указание, что следующее звено новосозданной структуры пока пустое
 
    if (Head!=NULL) //Если список не пуст 
    {
        Tail->Next=temp; //Указание, что следующее звено списка это новосозданная структура
        Tail=temp;      
    }     else Head=Tail=temp; //Если список не пуст, добавление первого элемента
}
 
//ФУНКЦИЯ ОТОБРАЖЕНИЯ СПИСКА НА ЭКРАНЕ 
 
 
 
 
//ФУНКЦИЯ ИЗЪЯТИЯ ЭЛЕМЕНТА ИЗ ОЧЕРЕДИ 
void List::del()
{
    if (Head!=NULL)  //Если список не пустой
    {
        Node *temp=Head; //Обращаемся к началу списка с помощью вспомогательного указателя
        cout<<"ЭЛЕМЕНТ "<<Head->str[MAX_LEN]<<" ВЫШЕЛ"<<endl;
        Head=Head->Next; //Сдвиг начала списка
        delete temp; //Освобождение памяти от предыдущего звена списка
    }
}
 
 
 
void main(){
    char stroka[MAX_LEN], stroka2[MAX_LEN];
   List lst;
  cin>>stroka;
  cin>>stroka2;
lst.Add(stroka);
lst.Add(stroka2);
lst.Show();
 
   system("PAUSE");
}
Добавлено через 18 минут
как сделать это без использования классов?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.11.2013, 18:36
Ответы с готовыми решениями:

Как правильно описать структуру БД?
Я делаю чат и мне понадобилась БД для списка пользователей. Там будут в частности администраторы и...

C# Подскажите как правильно передать указатель на структуру в функцию
Здравствуйте, возникли проблемы с переходом из С в С#, к сожалению синтаксис C# знаю плохо и сразу...

Подскажите как правильно сформулировать структуру базы данных для EF core
Всем привет! Делаю мобильное приложение. И тут захотел добавить систему комментариев. Суть вот в...

Описать структуру согласно варианту, содержащую указанные поля и методы
Описать структуру согласно варианту, содержащую указанные поля и методы. Описать массив для этой...

0
28.11.2013, 18:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.11.2013, 18:36
Помогаю со студенческими работами здесь

Подскажите пожалуйста как правильно описать переменную и записать из Едита в Ексель
вот часть String yach; yach=Edit1-&gt;Text;...

Описать структуру с именем AEROFLOT. Подскажите чутка
Есть задание (не прошу его выполнять) Описать структуру с именем AEROFLOT, содержащую следующие...

Подскажите Описать структуру с именем STUDENT, содержащую следующие поля:
1.Описать структуру с именем STUDENT, содержащую следующие поля: •фамилия и инициалы; • номер...

Как правильно написать функцию, которая редактирует структуру по полю Name и возвращает новую, исправленную структуру?..
Нужно отредактировать структуру по выбору пользователя. Проблема заключается в создании функции....


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru