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

структуры подскажите с функцией - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Одномерные массивы http://www.cyberforum.ru/cpp-beginners/thread34247.html
Задать 2 вектора A(n) и B(m). Выполнить такие задания: -найти вектора C, D и E из элементов векторов A и B так, чтобы в С находились только отрицательные элементы, в D - положительные в порядке...
C++ сравнения строк Всем привет !! столкнулся с проблемой сравнения строки, объясните пожалуйста как правильно сравнить строки на етом примере #include<iostream.h> int main() { char str="hello"; char... http://www.cyberforum.ru/cpp-beginners/thread34245.html
Поиск совершенного числа N через цикл for C++
Сложить программу с помощью цикла for Задание Дано некоторое число N. Сложить программу поиска “совершенных” чисел меньших за N. “Совершенным” есть число, которое равно суме своих делителей, за...
C++ Вычисление стоимости покупки с учетом скидки
Написать программу вычисления стоимости покупки с учетом скидки. Скидка 5% предоставляется если сумма больше 1000 рублей, 7% если сумма больше 1500 рублей. Написать программу вычисления стоимости...
C++ Заполнение двумерных символьных массивов http://www.cyberforum.ru/cpp-beginners/thread34232.html
Помогите пожалуйста в учебниках про строки вообще мало что пишут, как заполнять массив из нескольких строк, с клавиатуры. Без методов класса, желательно с помощью функции gets(), в конкретном...
C++ Возвращаемое значение функции Здарвствуйте. Моя задача состоит в написании следующей программы: вычислить среднее арифметическое значение элементов матрицы W(L,L), расположенных слева и справа от двух диагоналей. Эта программа... подробнее

Показать сообщение отдельно
ISergey
Maniac
Эксперт С++
1407 / 918 / 57
Регистрация: 02.01.2009
Сообщений: 2,742
Записей в блоге: 1
15.05.2009, 00:05
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
void Delete(person *&p, int index, int size){
    person *old = p;
    p = new person[size - 1];
    for(int i = 0, j = 0; i < size; ++i)
    {
        if(i != index){
 
            strcpy(p[j].work.fam , old[i].work.fam);
            strcpy(p[i].work.imja , old[i].work.imja);
            strcpy(p[j].work.otches , old[i].work.otches);
            strcpy(p[j].post , old[i].post);
 
            p[j].time = old[i].time;
            p[j].day = old[i].day;
            p[j].salary = old[i].salary;
 
            ++j;
        }
    }
    --size;
    delete[] old;
}
и здесь
Код
void Add (person *&e,int &size , const person *pEn)
{
const person *old = e;
e = new person[size [COLOR="Red"]+ [/COLOR]1];
Добавлено через 2 минуты 40 секунд
Блин так
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
void Delete(person *&p, int index, int size){
    person *old = p;
    p = new person[size - 1];
    for(int i = 0; i < index; ++i)
    {
            strcpy(p[i].work.fam , old[i].work.fam);
            strcpy(p[i].work.imja , old[i].work.imja);
            strcpy(p[i].work.otches , old[i].work.otches);
            strcpy(p[i].post , old[i].post);
 
            p[i].time = old[i].time;
            p[i].day = old[i].day;
            p[i].salary = old[i].salary;
    }
 
    for(int i = index + 1; i < size; ++i)
    {
        strcpy(p[i].work.fam , old[i].work.fam);
        strcpy(p[i].work.imja , old[i].work.imja);
        strcpy(p[i].work.otches , old[i].work.otches);
        strcpy(p[i].post , old[i].post);
 
        p[i].time = old[i].time;
        p[i].day = old[i].day;
        p[i].salary = old[i].salary;
    }
 
    --size;
    delete[] old;
}
Но имхо это тупо.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru