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

Сортировка и выписка в структурах - C++

Восстановить пароль Регистрация
 
art201214
0 / 0 / 0
Регистрация: 25.09.2012
Сообщений: 11
19.05.2013, 18:13     Сортировка и выписка в структурах #1
Как сделать выписку сотрудников, выданная зарплата которых не превышает число введенное с клавиатуры?
И по поводу сортировки:
вот main и сама структура
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
#include <iostream> 
#include <iomanip> 
#include <string.h>
#include <conio.h>
#include <math.h>
#include <windows.h>
using namespace std; 
 
 const int  n=2;         
     struct zp          
     {
     char f[20];
     int z;
     int p;
     int S;
       } ;
 
 int main()
 {
     setlocale(0, "Rus");
 
    int s1,s2,s3;  
      zp zapis[n];     
                             
           cout << "ФОРМИРОВАНИЕ ДОКУМЕНТА:\n";
            cout << "ДОКУМЕНТ ДОЛЖЕН ВМЕЩАТЬ " << n 
            << " СТРОКИ - ЗАПИСИ: \n";
      for( int i=0; i < n; i++)
      {
 cout << "\nФОРМИРОВАНИЕ" << i + 1 <<  "  ЗАПИСИ";
 cout << "\nВВЕСТИ ФАМИЛИЮ (НЕ БОЛЬШЕ 20 СИМВОЛОВ): ";
cin >>  zapis[i].f; 
cout << "\nУКАЗАТЬ ЗАРПЛАТУ : ";
cin >> zapis[i].z; 
 cout << "\nСКОЛЬКО УДЕРЖАНО : \n";
 cin >>  zapis[i].p;      
}
       s1=0;s2=0;s3=0;
      for(int i=0; i < n; i++)
        {
           zapis[i].S = zapis[i].z - zapis[i].p;
                  s1 += zapis[i].z;
                 s2 += zapis[i].p;
                 s3 += zapis[i].S;
        }
  
 void clrscr(void);
 cout << "\n   ВЕДОМОСТИ ПРО ВЫДАННУЮ ЗАРПЛАТУ    ";
 cout << "\n|-----------------------------------------------------------------------------|";
 cout << "\n|  n/n  |  ФАМИЛИЯ   |   ЗАРПЛАТА  |  УДЕРЖАНО  | ВЫДАНО |";
 cout << "\n|-----------------------------------------------------------------------------|";
 
    for(int i=0;i<n;i++)
     cout << "\n|" << setw(7)<< i+1 << "|" << setw(8)<< (zapis[i]).f << "|"
 
     << setw(13)<< setprecision(2)<< (zapis[i]).z << "|"
 
     << setw(8)<< setprecision(2)<< (zapis[i]).p << "|"
    << setw(8)<< setprecision(2)<< (zapis[i]).S << "|";
   cout << "\n|-------------------------------------------------------------------------| ";
   cout << "\n|  ВСЕГО:        |" << setw(13)<< setprecision(2)<< s1
   << "|" << setw(8)<< s2<< "|" <<setw(8) << setprecision(2)<< s3 << "|";
    cout << "\n|--------------------------------------------------------------------------|";
     
    
    return 0;
 }
а вот сортировка, которую я написал
C++
1
2
3
4
5
6
7
8
9
10
11
12
void sort ()
{
     zp zapis[n],t;
   for (int i = 0; i<n-1; i++ )  
      for (int j = i; j<n; j++ )
         if ( zapis[i].S < zapis[j].S)
             { 
             t = zapis[i];
             zapis[i]= zapis[j];
             zapis[j]= t;
             }  
}
Как теперь дописать в main'е, что бы выводилось отсортированно?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2013, 18:13     Сортировка и выписка в структурах
Посмотрите здесь:

Указатели в структурах C++
C++ константы в структурах
C++ Сортировка в структурах[C++]
операция new в структурах C++
Заполнение строк в структурах C++
C++ Строки в структурах
Рекурсия в структурах C++
Сортировка в структурах: несоответствие полей C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 13:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru