1 / 1 / 2
Регистрация: 22.10.2011
Сообщений: 75
1

Массивы структур и массивы строк

02.11.2012, 18:32. Показов 8415. Ответов 2
Метки нет (Все метки)

1. Сформировать динамический массив из элементов структурного типа. Структурный тип определен в варианте.
2. Распечатать сформированный массив.
3. Выполнить поиск элементов в массиве, удовлетворяющих заданному в варианте условию и сформировать из них новый массив.
4. Распечатать полученный массив.
5. Сформировать динамический массив, состоящий из динамических строк.
6. Распечатать сформированный массив.
7. Выполнить обработку этого массива.
8. Распечатать полученный массив.

Задание:
C++
1
2
3
4
5
6
 struct employee
{
char*name;
float salary;
int stage
};
Критерий для поиска в массиве структур - Сотрудники со стажем больше 10 лет
Задание для обработки массива строк - Удалить строку из конца матрицы

Помогите кто может!!!!
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.11.2012, 18:32
Ответы с готовыми решениями:

Массивы структур и массивы строк
Студенты, у которых рейтинг меньше 3 что не верно делаю?! #include <iostream> #include...

Массивы структур и массивы строк
Здравствуйте. Возникла проблема с одной работой: Постановка задачи: 1. Сформировать динамический...

Структуры, массивы, указатели, динамические массивы структур
Помогите с решением задачи (прикрепляю условие). Заранее спасибо.

Динамические массивы структур;Классы. Класс массивы структур;Классы. Класс динамического массива структур.
Здраствуйте.Помогите с практичкой мое задание 4.3. Строка таблицы данных содержит следующую...

2
178 / 161 / 38
Регистрация: 08.10.2012
Сообщений: 423
02.11.2012, 19:49 2
Цитата Сообщение от Rezvanov Посмотреть сообщение
Критерий для поиска в массиве структур - Сотрудники со стажем больше 10 лет
C++
1
2
3
4
employee *a=new employee[n];//n - количество сотрудников
for(int i=0;i<n;i++)
    if(a->stage>10)
         cout<<a[i];//Либо перегрузить оператор "<<" либо сделать вывод нужных полей сотрудника
Цитата Сообщение от Rezvanov Посмотреть сообщение
Задание для обработки массива строк - Удалить строку из конца матрицы
задание не понял, поясните на примере
0
1 / 1 / 2
Регистрация: 22.10.2011
Сообщений: 75
02.11.2012, 19:56  [ТС] 3
скажи свой эмайл, я тебе кину методичку. у меня 4 вариант

Добавлено через 4 минуты
Вот пример:

Лабораторная работа №6
Массивы структур и массивы строк.
Постановка задачи:
1. Сформировать динамический массив из элементов структурного типа. Структурный тип определен в варианте.
2. Распечатать сформированный массив.
3. Выполнить поиск элементов в массиве, удовлетворяющих заданному в варианте условию и сформировать из них новый массив.
4. Распечатать полученный массив.
5. Сформировать динамический массив, состоящий из динамических строк.
6. Распечатать сформированный массив.
7. Выполнить обработку этого массива.
8. Распечатать полученный массив.

Задание:
Структура –
C++
1
2
3
4
5
6
struct employee
{
char*name;
float salary;
int stage
};
Критерий для поиска в массиве структур - сотрудники, у которых имя начинается на букву ‘Л’.
Задание для обработки массива строк - добавить строку с заданным номером.


Описание используемых в программе стандартных функций.
struct имя_структуры
{
}
– определение структуры. Структура – это объединенное в единое целое множество поименованных элементов данных.

Исходный код программы:

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
#include <iostream.h>;
#include <stdlib.h>;
#include <windows.h>
 
struct employee
    {
        char name[20];
        float salary;
        int stage;
    };
 
employee create_struk(int n1, int j)//функция формирования массива структур
{
    employee mass[15];
    cout<<"\n";
    cout<<"Name="; 
    cin>>mass[j].name;
    cout<<"Salary="; 
    cin>>mass[j].salary;
    cout<<"Stage="; 
    cin>>mass[j].stage; 
    cout<<"------------------------------"<<"\n"; 
    return mass[j];
};
 
void print_struct(int j, employee mass[15])//функция печати  массива
{
    cout<<"\n";
        cout<<": Name="<<mass[j].name<<"  Salary="<<mass[j].salary<<"  Stage="<<mass[j].stage; 
};
 
void find_struk(int n1, employee mass[15])//функция поиска в массиве структур элементов с  name на букву “Л”
{
    int i=0;
    employee findm[15];
    for(int j=0; j<n1; j++)
    {
        if (mass[j].name[0]=='Л')
        {
            for(int k=0; k<sizeof(mass[j].name); k++) findm[i].name[k]=mass[j].name[k];
            findm[i].salary=mass[j].salary;
            findm[i].stage=mass[j].stage;
            i++;
        }
    }
    for(j=0;j<i;j++)
    {
        cout<<"\n";
        cout<<"Name="<<findm[j].name<<" ";
        cout<<"Salary="<<findm[j].salary<<" ";
        cout<<"Stage="<<findm[j].stage<<" ";
    };
    cout<<"\n";
};
 
void insert_row(int n1, employee mass[15], int k)// функция ввода в начало массива K элементов
{
    employee kin[15];
 
    for(int i=0;i<k;i++)
    {
        cout<<"name="; cin>>kin[i].name;
        cout<<"salary="; cin>>kin[i].salary;
        cout<<"age="; cin>>kin[i].stage;
        cout<<"=========================\n";
    }
    int bn;
    bn=n1+k;
    int j=0;
    for(i=k;i<bn;i++)
    {
        for(int f=0; f<sizeof(mass[j].name); f++) kin[i].name[f]=mass[j].name[f];
        kin[i].salary=mass[j].salary;
        kin[i].stage=mass[j].stage;
        j++;
    }
    for(i=0;i<bn;i++)
    {
        for(int f=0; f<sizeof(kin[i].name); f++) mass[i].name[f]=kin[i].name[f];
        mass[i].salary=kin[i].salary;
        mass[i].stage=kin[i].stage;
    }
}
 
void main() 
{
    SetConsoleCP(1251);
 SetConsoleOutputCP(1251);
 
    int n;
    cout<<"insert n\n";
    cin>>n;
    employee mass1[15];
 
    int k; int i; int g=0; g=g+n; int r;
    
    do
    {
        cout<<"1. Создать структуру\n";
        cout<<"2. Напечатать структуру\n";
        cout<<"3. Найти в структуре имена с началом на букву Л\n";
        cout<<"4. Добавить в начало K-строк\n";
        cout<<"5. выход\n";
        cin>>k;
        switch(k)
        {
        case 1:
            for(i=0; i<n; i++)
                mass1[i]=create_struk(n,i);
            break;
        case 2:
            for(i=0; i<g; i++)
            print_struct(i, mass1);  cout<<"\n"; break;
            case 3: find_struk(n,mass1); break;
            case 4: cout<<"Введите K\n"; cin>>r; g=g+r;  insert_row(n,mass1,r); break;
        }
        
    }
    while(k!=5);
    
};
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.11.2012, 19:56
Помогаю со студенческими работами здесь

Массивы структур, массивы векторов
Разработайте тип данных «Вектор в трехмерном пространстве» в виде структуры, поля которой —...

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

Массивы структур
#include &lt;iostream&gt; #include&lt;string&gt; using namespace std; const char* pName = {...

Массивы из структур
Здравствуйте форумчане. Помогите почему не работает.#include &lt;stdio.h&gt; #include &lt;string.h&gt;...


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

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

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