1 / 1 / 0
Регистрация: 22.12.2012
Сообщений: 26
1

Удаление элемента динамического массива справа

31.05.2014, 21:58. Показов 1605. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Нужно удалить последний структурный элемент динамического массива.
помогите пожалуйста никак не получается сделать эту функцию.
Это то, что сделала я, с радостью рассмотрю другой метод.
C++
1
2
3
4
5
6
7
8
9
10
11
void del_right (liter *&a, int &n)
{ liter *k;
for (int i=0; i<n-1; i++)
{strcpy(k[i].autor, a[i].autor);
strcpy(k[i].name, a[i].name);
k[i].year=a[i].year;
}
delete[]a;
a=k;
n--;
}
структура:
C++
1
2
3
4
5
6
struct liter
{
char autor[20];
char name[20];
int year;
};
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.05.2014, 21:58
Ответы с готовыми решениями:

Удаление элемента из динамического массива
Приветствую зашедших! Мне по условию дан динамический массив int элементов, в котором надо...

Запись и удаление элемента динамического массива
Приветствую всех форумчан (я наверное всем надоел, знаю, но помогите, плз :D) Проблема: С...

Добавление и удаление элемента динамического массива
Подскажите какие существую способы добавления и удалеия элемента одномерного динамического...

Запись и удаление элемента динамического массива
Такое дело: при вызове функции удаления набранной юзэром ячейки динамического массива удаляется......

4
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
31.05.2014, 23:37 2
1. используйте std::string
2. используйте std::vector
3. код полная ахинея
4. покажите как заполняется массив
0
1 / 1 / 0
Регистрация: 22.12.2012
Сообщений: 26
01.06.2014, 09:40  [ТС] 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
void add_right (liter *&a, liter x, int &n)
{
cout<<"autor:";
cin.get();
cin.getline(x.autor,20);
cout<<"name:";
cin.getline(x.name,20);
cout<<"year:";
cin>>x.year;
a[n]=x;
n++;
}
 
 
 
 
void add_left (liter *&a, liter x, int &n)
{
cout<<"autor:";
cin.get();
cin.getline(x.autor,20);
cout<<"name:";
cin.getline(x.name,20);
cout<<"year";
cin>>x.year;
 
for (int i=0; i<=n; i++)
{a[n-i+1]=a[n-i];
}
a[0]=x;
n++;
}
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
01.06.2014, 11:11 4
Лерой, то у Вас динамический массив, то дек. Как задание звучит изначально?
0
1 / 1 / 0
Регистрация: 22.12.2012
Сообщений: 26
01.06.2014, 11:42  [ТС] 5
Разработать программу, выполняющую операции со структурами данных, реализованными в виде динамических массивов. Алгоритм выполнения каждой операции оформить в виде функции. Программа должна содержать меню, позволяющее протестировать все операции с динамической структурой.

элементы данных:
Авторы – 20 символов, название - 20 символов, год издания – целое число

структура данных:
Дек с ограниченным выходом
0
01.06.2014, 11:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.06.2014, 11:42
Помогаю со студенческими работами здесь

Удаление последнего элемента динамического массива (программа вылетает с ошибкой)
for (vector&lt;P&gt;::iterator i = p.begin(); i != p.end(); ++i) { i -&gt; life --; ...

Удаление динамического массива
Доброго времени суток! Задача такова, что надо организовать бесконечный ввод в массив. Ввод...

Удаление динамического массива
доброго времени суток. написал программу, в которой создается динамический массив. с ним проводим...

Удаление динамического массива
Здравствуйте! Имеем код: #include &lt;iostream&gt; #include &lt;ctime&gt; #include &lt;cstdlib&gt; using...


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

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

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