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

Редактирование и удаление из списка - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Отсортировать большое число элементов за минимальное время, используя битовый массив http://www.cyberforum.ru/cpp-beginners/thread1312239.html
Всем привет! Вот, получил задание такое: написать сортировку большого числа элементов за минимальное время, используя битовый массив. Работать с числами используя их двоичный код. Видимо надо...
C++ Выделение динамической памяти размером полученным из функции Функция ввода размера динамического массива int Kolvo(){ int x; printf("Введите количество элементов массива числом(от 1 до 1000):"); fflush(stdin); scanf_s("%d", &x); ... http://www.cyberforum.ru/cpp-beginners/thread1312219.html
Какая-то мистика с if C++
Программа работает нормально, но если я убираю проверку в перегрузке оператора + условие if, то функция strcat не склеивает... #include <iostream> #include <cstring> #include <cstdlib> #include...
C++ Пройти массив по столбцам
Задача звучит так: нахождение номера строки, в которой расположен минимальный элемент любого столбца двумерного массива. Другими словами, нужно в каждом столбце массива найти минимальный элемент и...
C++ Список со структурой - не работает функция http://www.cyberforum.ru/cpp-beginners/thread1312192.html
есть структура с городами и рейсами нужно сделать в меню функцию по изменению данных в программе вот сама функия node* modify(node *head, int number){//Изменение node *ptr = head; int count =...
C++ Сортировка массива по другим значениям Скажем у нас есть массив А = {1,2,3} На пример для 1 массива A присвоить значение 3 , для 2 занечение 1,для 3 значение 2 после сортировки получаем А={2,3,1}. Как это сделать ? подробнее

Показать сообщение отдельно
Max Dark
шКодер самоучка
1850 / 1650 / 603
Регистрация: 09.10.2013
Сообщений: 3,678
Записей в блоге: 6
Завершенные тесты: 2
27.11.2014, 11:02
удаление: вы удаляете следующий элемент, а не текущий
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 Delete ( ) {
    int E;
    cout<<"vvedite ID_Dogovora dlia udalenia ";
    cin>>E;
 
    Sviaz_dogovor(E);
 
    List_Dogovor *temp = head_d, *prev = NULL, *curr;
 
    while(temp != NULL) // пока не конец списка
    {
        if(temp->dogovor.Dogovor_id==E)//если информационное поле равно Е
        {
            if(prev == NULL) {
                head_d = temp->next;
                delete temp;
                temp = head_d;
            }
            else {
                prev->next = temp->next;
                delete temp;
                temp = prev->next;
            }
            // break;
            
        }
        else {
            prev = temp;
            temp=temp->next; // перейти к следующему элементу
        }
    }
}
редактирование:
Цитата Сообщение от Valera1984 Посмотреть сообщение
k->next = tmp->next;
в этой строке нет смысла, тк k и tmp указывают на одно и тоже место в памяти
Это все равно что записать
C++
1
tmp->next = tmp->next;
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru