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

Разработайте программу обработки структур - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подсчитайте количество скобок всех видов в строке http://www.cyberforum.ru/cpp-beginners/thread240450.html
Здравствуйте уважаемые любители и ценители языка С++! У меня к вам огромная просьба. На днях нужно сдать контрольную работу по предмету Конструирование программ и языки программирования. Если вам не...
C++ Разработайте программу обработки массивов. Входные данные введите с клавиатуры. Здравствуйте уважаемые любители и ценители языка С++! У меня к вам огромная просьба. На днях нужно сдать контрольную работу по предмету Конструирование программ и языки программирования. Если вам не... http://www.cyberforum.ru/cpp-beginners/thread240449.html
Значение аргумента х изменяется от а до b с шагом h C++
Здравствуйте уважаемые любители и ценители языка С++! У меня к вам огромная просьба. На днях нужно сдать контрольную работу по предмету Конструирование программ и языки программирования. Если вам не...
Описать понятие «окружность» как класс C++
Описать понятие «окружность» как класс. Обеспечить поля центр окружности и радиус и реализовать метод для изменения радиуса окружности с выполнением проверки, что новое значение радиуса больше нуля.
C++ Минимальное число в матрице http://www.cyberforum.ru/cpp-beginners/thread240415.html
Здравствуйте помогите пожалуйста написать программу для поиска минимального числа в матрице (двумя способами) просто вобше не шарю в этом=) если что пишите в личку=) заранее огромное спасибо ...
C++ делаю игру,но... Здравствуйте господа програмисты!делаю всем нам знакомым игру морской бой.и вот какая проблема-как сделать,что бы когда компьютер "расстовлял" свои корабли не ставил его с ближ стоящим кораблём по... подробнее

Показать сообщение отдельно
kiberfunk
Сообщений: n/a
14.03.2012, 01:08
Доброго времени суток!
Разработайте программу обработки структур. В программе
используйте структуру, содержащую поля с информацией об
учащихся:

- фамилия и инициалы;
- дата рождения;
- номер группы;
- оценки за семестр по предметам: физика, математика, ин-
форматика, этика, психология.
Организуйте ввод исходных данных, средний балл каждого
учащегося рассчитайте по введенным оценкам.
На экране отобразите всю введенную информацию и осуще-
ствите поиск данных в соответствии с вариантом.

Как вывести анкетные данные всех учащихся, упорядоченные
по дате рождения?

Добавлено через 10 минут
Цитата Сообщение от NNN777 Посмотреть сообщение
Можно сделать как-то так)
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
135
136
137
138
139
140
141
142
143
144
145
146
147
#include <iostream>
#include <string.h>
#include <locale.h>
using namespace std;
 
const int size=50;
const int o=5; //количество предметов
const int MaxItems=3;   //max количество элементов в таблице
int n=-1;
 
struct Item 
{
    char name[size]; 
    char date[size]; 
    int numberGr;
    int estimation[o];
};
 
Item table[MaxItems];   // определение рабочего вектора
 
char *oc[]=
{
    "1. физика ",
    "2. математика ", 
    "3. информатика" , 
    "4. этика ", 
    "5. психология "
};
char *mes[]=
{
    "1. Занести в таблицу\n",
    "2. Просмотреть таблицу\n",
    "3. Поиск в таблице\n",
    "4. Завершить работу\n"
};
int mes_count=sizeof(mes)/sizeof(mes[0]);
 
void Insert (void);
void Find (void);
void Show (void);
void Quit(void);
void (*Sunc[])()={Quit, Insert, Show, Find};
 
int menu ()
{
    int ans;
    do
    {
        for (int j=0; j<mes_count; j++)
            cout<<mes[j];
        cout<<endl;
        cout<<"Выберете действие: ";
        cin>>ans;
    }
    while (ans<0||ans>mes_count);
    return ans%mes_count;
}
int main()
{   
    setlocale(LC_ALL,"Russian");
    int answer;
    while (answer = menu())
        Sunc[answer]();
    cout << "\n******* Завершение *******" << endl;
}
void Insert()
{
    int k, i=0;
    char buf[size];
    char buf2[size];
    if (n==MaxItems-1)
        cout<<"Таблица заполнена!\n";
    else
    {
        n++;
        cout<<"Имя: ";
        cin>>table[n].name;
        cout<<"Дата рождения: ";
        cin>>table[n].date;
        cout<<"Номер группы: ";
        cin>>table[n].numberGr;
        cout<<"Введите оценки: \n";
        for (i=0; i<o; i++)
        {
            cout<<oc[i];
            cin>>table[n].estimation[i];
        }
        
    }
}
void Show ()
{
    int i=0;
    if (n<0)
        cout<<"Таблица пуста!\n";
    else
    {
        cout << "\n==================="<< endl;
        cout << "Индекс"<<'\t'<<"Имя" << '\t' << "Дата рождения"<<'\t'<<"Номер группы"; 
        cout << "\n==================="<< endl;
        for (i=0; i<=n; i++)
        {
            cout<<i<<'\t'<<table[i].name<<"\t"<<table[i].date<<'\t'<<table[i].numberGr;
            cout<<endl;
            cout<<"Оценки: \n";
            //cout<<"физика, математика, информатика, этика, психология\n";
            for (int j=0; j<o; j++)
            {
                cout<<oc[j];
                cout<<table[i].estimation[j]<<endl;
            }
        }
 
            cout << "\n==================="<< endl;
    }
}
void Quit ()
{
    n=0;
}
void Find ()
{
    int i=0, z;
    if (n<1)
        cout<<"Таблица пуста!\n";
    else
    {
        do
        {
            cout<<"Выберите предмет: \n";
            cout<<" 1. физика\n 2. математика\n 3. информатика\n 4. этика\n 5. психология\n";
            cin>>z;
        }
        while (z>o ||z<0);
        cout << "\n==================="<< endl;
        cout << "Индекс"<<'\t'<<"Имя" << '\t' << "Дата рождения"<<'\t'<<"Номер группы"; 
        cout << "\n==================="<< endl;
        for (i=0; i<=n; i++)
        {
            if (table[i].estimation[z]<4)
                cout<<i<<'\t'<<table[i].name<<"\t"<<table[i].date<<'\t'<<table[i].numberGr;
            cout<<endl;
        }
 
            cout << "\n==================="<< endl;
    }
}
А как реализовать сортировку и вывод анкетных данных, упорядоченных по дате рождения? Заранее спасибо!
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru