Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.79/48: Рейтинг темы: голосов - 48, средняя оценка - 4.79
1 / 1 / 2
Регистрация: 22.10.2011
Сообщений: 77

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

02.11.2012, 18:32. Показов 9284. Ответов 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
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.11.2012, 18:32
Ответы с готовыми решениями:

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

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

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

2
178 / 161 / 38
Регистрация: 08.10.2012
Сообщений: 423
02.11.2012, 19:49
Цитата Сообщение от 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
Сообщений: 77
02.11.2012, 19:56  [ТС]
скажи свой эмайл, я тебе кину методичку. у меня 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
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.11.2012, 19:56
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru