Форум программистов, компьютерный форум CyberForum.ru

Не работает поиск в структуре - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Одномерный масив.Добавление элементов в конец.С++ http://www.cyberforum.ru/cpp-beginners/thread740478.html
Вот задания: 1) Сформировать одномерный массив целых чисел. 2) Распечатать полученный массив. 3) Уничтожить 5 первых элементов массива. 4) Добавить в конец массива 3 новых элемента. 5) Распечатать полученный массив. Я сделал все задания кроме 4,точнее сделал и его,но програма добавляет 3 елемента в начало массива,а не в его конец.Прошу помочь исправить мне мою ошибку.
C++ объясните пожалуйста: tz какого типа объясните пожалуйста: tz какого типа #include <conio.h> #include <iostream> struct STUDENT { char fio; char oc; }; http://www.cyberforum.ru/cpp-beginners/thread740474.html
C++ Дан массив целых чисел, содержащий 20 элементов
Написал прогу, вот только интересно, правильно ли я понял условие, вообщем вот задание - Дан массив целых чисел, содержащий 20 элементов. Записать в тот же массив сначала все отрицательные числа и нули, а затем все положительные числа, сохраняя порядок их следования. А вот моё решение, только я не выводил рандомный массив, я вывел сразу отсортированный массив - #include <cstdlib>
C++ Строковые данные ( Определить количество слов, у которых первый и последний символ совпадают между собой)
Дана строка символов. Группы символов, не разделённые пробелами, считаются словами. Определить количество слов, у которых первый и последний символ совпадают между собой. Кто,чем,как поможет? Добавлено через 52 минуты Эй? вообще молчок блин
C++ Ошибки http://www.cyberforum.ru/cpp-beginners/thread740449.html
#include <iostream> #include <string> #include <cstring> #include <windows.h> #include <limits> using namespace std; struct employee
C++ Получение вчерашней даты? помогите, надо получить/присвоить вчерашнюю дату переменной типа стринг. подробнее

Показать сообщение отдельно
bestpalyer1
-1 / 1 / 0
Регистрация: 20.12.2012
Сообщений: 47
20.12.2012, 22:58     Не работает поиск в структуре
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
122
123
124
125
126
127
128
129
130
131
132
133
134
#include <iostream>
#include <string>
#include <cstring>
#include <windows.h>
#include <limits>
using namespace std;
 
 
 
struct employee
{
char *name;
float salary;
int stage;
};
 
 
employee *form(int n)
{
    employee *matr=new employee[n];
    char s[30];
 
    for(int i=0;i<n;i++)
    {
    cout << "Введите имя:";
    cin >> s;
    matr[i].name=new char [strlen(s)+1];
    strcpy(matr[i].name,s);
    cout << "Введите заработную плату:";
    cin >> matr[i].salary;
    cout << "Введите стаж:";
    cin >> matr[i].stage;
    }
 
    return matr;
}
 
 
void Print(employee *matr,int n)
{
    for(int i=0;i<n;i++)
{
    cout<<matr[i].name<<"\t";
    cout<<matr[i].salary<<"\t";
    cout<<matr[i].stage<<"\n";}
}
 
 
 
employee *poisk(employee*matr,int n,int &l)
{
    
    int i=0;
    for(int i=0;i<n;i++)
 
        if(l==0)
        {
            cout << "Таких сотрудников нет\n";
            return matr;
        }
 
        employee*ger=new employee [l];
 
        
 
        for(i=0;i<n;i++)
 
        if(matr[i].stage>10)
{
    ger[l].name=matr[i].name;
 
    ger[l].salary=matr[i].salary;
 
    ger[l].stage=matr[i].stage;
 
    l++;
            }
 
    char d[4];
    cout << " Если вы хотите выполнить печать списка сотрудников со стажем больше 10 лет, то введите yes, если нет, то no";
    cin>>d;
    if
    (strcmp(d,"yes")==0)
    Print(ger,l);
    return ger;
}
 
 
 
 
void power(int n)
{
    int h=0;
 
    employee*ger;
 
    while(h!=4)
{
    
    cout << "1. Формирование массива структур." << endl;
    cout << "2.Печать общего списка рабочих." << endl;
    cout << "3.Поиск сотрудников со стажем более 10 лет." << endl;
    cout << "4.Выход" << endl;
    cout << "Ваш выбор:";
    cin>>h;
 
    int l=0;
 
    switch (h)
   {
    case 1:
        employee*matr;
        matr=form(n);
        break;
    case 2:
        Print(matr,n);
        break;
    case 3:
        ger=poisk(matr,n,l);
        break;
    }
}
}
 
void main()
{
    setlocale(LC_ALL,"RUS");
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    int n;
    cout <<"Введите кол-во рабочих:";
    cin>>n;
    power(n);
}


ps. Все работает хорошо,но поиск не производится. Посмотрите,кому не не тяжело.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 19:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru