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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Shef4u
15 / 15 / 0
Регистрация: 31.10.2011
Сообщений: 116
#1

Структуры - C++

27.11.2012, 20:46. Просмотров 176. Ответов 0
Метки нет (Все метки)

Ребята, помогите пожалуйста решить задачу. Есть массив с 10 структур, куда заносятся данные об студентах: Имя, номер группы и количество пропусков. Надо чтобы выводило записи по спаданию номеров групп. Цикл для этого то работает, и номера групп берет правильно, но имена выводит не соответствующие номеру группы. вот код:

Код
#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <windows.h>
#pragma argsused
struct Student
{
char PIB[60];
int Num, Nka;
} *st;
void vvid(int nom, Student *st)
{
cout<<"\nÂíåñ³òü â³äîìîñò³\n"<<(nom+1) ;
cout<<"\nϲÁ: ";         cin>>st ->PIB;
cout<<"\nÍîìåð ãðóïè: "; cin>>st ->Num;
cout<<"\nÊ-ñòü ïðîïóñê³â: "; cin>>st ->Nka;
}

int main(int argc, char* argv[])
{   SetConsoleOutputCP(1251);
const int n=11;
Student spysok[n];
int i, N;
cout<<"\n Ââåä³òü ê³ëüê³ñòü ñòóäåíò³â ó ãðóï³ (< 10): "; cin >> N;
   for(i=0;i<N;i++) vvid(i,&spysok[i]);
      cout<<"\n\aÑïèñîê Ñòóäåíò³â";
   for(i=0;i<N;i++)
   {cout<<"\nÑòóäåíò: "<<spysok[i].PIB<<endl<<"Ãðóïà: "<<spysok[i].Num<<endl<<"Ïðîïóñêè: "<<spysok[i].Nka<<endl;
   }
   //2 çàâäàííÿ
  /* int max;
   max=spysok[0].Num;
   for (i=1;i<n;i++)
   { if (spysok[i].Num>max) max=spysok[i].Num;
    }
    cout<<"\nMAX: "<<endl;   */
       for(int i=0; i < N; i++) {
    for(int j = N-1; j > i; j-- ) {
      if ( spysok[j-1].Num < spysok[j].Num )
    {
      int x=spysok[j-1].Num;
      spysok[j-1].Num=spysok[j].Num;
      spysok[j].Num=x;
    }}}

    for(int i=0; i < N; i++)
    { cout<<endl<<spysok[i].PIB<<endl<<spysok[i].Num; } //вот тут выводит правильно номер, но не имя.

   //3 çàâäàííÿ
    for(i=0;i<N;i++)
    { if (spysok[i].Nka>20)
   cout<<"\nÓ íàñòóïíèõ ñòóäåíò³â á³ëüøå 20 ïðîïóñê³â\n";
   else cout<<"Ñòóäåíò³â ç ê-ñòþ ïðîïóñê³â > 20 íåìàº"; break;
    }
    for(i=0;i<N;i++)
    { if (spysok[i].Nka>20)
    cout<<"\nÑòóäåíò: "<<spysok[i].PIB<<endl<<"Ãðóïà: "<<spysok[i].Num<<endl;
    }
    cout<<endl;

system("pause");
        return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2012, 20:46     Структуры
Посмотрите здесь:

Управляющие структуры. Программирование алгоритмов разветвляющейся структуры. - Delphi
как это в delphi выполнить?((( Вычислить объем и площадь полной поверхности цилиндра, если известны высота и радиус основания V=пr^2*h,...

Помещение структуры в вектор, удаление структуры, изменение элементов структуры - C++
Здравствуйте. Помогите разобраться с тем, как: 1 - находить элементы в векторе зная уникальный элемент структуры. 2 - удалять...

Функция внутри структуры использует указатель, как поле этой структуры - C++
Коротко, есть класс A, описан в файле A_class.h ну и реализованы функции в A_class.cpp, есть файл GlobalItems.h, где хранятся глобальные...

Динамические структуры данных. Программа ввода в структуры и вывода информации из неё. - C++
Автоматизированная информационная система на железнодорожном вокзале содержит сведения об отправлении поездов дальнего следования. Для...

Динамическое изменение структуры таблицы для организации древовиднойой структуры - MS Access
Доброго времени суток. У меня такой вот вопрос: Необходимо сделать возможность добавления записей в таблицу определнным образом (через...

Динамические структуры данных, списковые структуры (надо разобраться что делает программа) - Delphi
дана программа, надо помочь выяснить что в ней делает каждая подпрограмма unit Unit6; interface uses Windows,...

Структуры, массивы структур (как можно присваивать(инициализировать) значения полям структуры) - C++
Есть у меня вот такая структура, например struct Subject { int cost; int Volume; }; Потом создаю экземпляр, Subject G; ...

Вывод структуры, строка как элемент структуры - C++
Описать структуру с именем TRAIN, содержащую следующие поля: □ название пункта назначения; □ номер поезда; □ время отправления. ...

Исследование структуры FILE или: что вообще можно выудить из этой структуры, указатель на которую мы получаем при открытии файла? - C++
Ничего нельзя. Итак, новичкам напомню, что после выполнения кода FILE* f= fopen (&quot;file.txt&quot;, &quot;w&quot;); в переменной f содержится...

Структуры. Вызов данных структуры по указателю. с++ - C++
Условие задачи: Помогите, пожалуйста, с как реализовать печать вообще не представляю.


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru