Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.05.2014, 23:20   #1
Kseni564
Пользователь
 
Регистрация: 04.05.2014
Сообщений: 14
По умолчанию С++Исправить ошибки в структуре STUDENT

Проверьте пожалуйста! Задание такое: описать структуру с именем STUDENT, содержащую следующие поля:
а)фамилия и имя(строка 15 символов),
б) год рождения(целое неотриц. число),
в)номер группы( число целое или строка из 3 символов),
г)оценки за сессию по 4 предметам( массив из 4 типа float)
В этой программе, реализовать следующие функции:вывести список студентов, фамилии которых начинаются на букву В, с указанием года их рождения; список вывести в упорядоченном по возрасту виде(начиная со старшего).
Я не знаю как делать отбор по первой букве В и куда вставить!

Мой код:
Код:
#include <iostream>
#include <locale>


using namespace std;

 
struct STUDENT 
{ 
    string name;
	int year;
    int group; 
    float marks[4];
};
 char str[255];
int main() 
{   
    setlocale(0,"rus");
    const int size = 3; // количество студентов
    STUDENT students[3]; // массив 
    int i;  
    int n = 0; // счётчик студентов
 
    for ( i = 0; i < size; i++)  // ввод информации
    { 
        cout << "Введите фамилию студента " << endl; 
        cin >> students[n].name; 
		cout<<" Год рождения "<<endl;
		cin>> students[n].year;
        cout << "Введите номер группы " << endl; 
        cin >> students[n].group; 
        cout << "Введите 4 оценки " << endl; 
        for (int i = 0; i < 4; i++) 
        cin >> students[n].marks[i]; 
        n++;
        
	}

	// Упорядочивание записей по возрастанию номеров 
		// (используется пузырьковая сортировка)
STUDENT Temp;{
   int i,j;
   for (i=1; i<n; i++) {
     for (j=1; j<=(n-i); j++) {
       if ( students[j].year > students[j+1].year) {
         Temp = students[j];
         students[j] = students[j+1];
         students[j+1] = Temp;
       }
	 }
	 cout<<"Список студентов ";
	 cout<<students[n].name;
	 
   }
}
   
    return 0;
	}
Помогите, пожалуйста

Последний раз редактировалось Stilet; 08.05.2014 в 11:23.
Kseni564 вне форума Ответить с цитированием
Старый 08.05.2014, 11:33   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
if ( students[j].year > students[j+1].year && students[n].name=='В') {
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не знаю как исправить ошибку считывания строки в структуре Erlotaza Помощь студентам 10 10.06.2013 20:14
Исправить ошибки Irishka_brand Помощь студентам 0 22.12.2012 20:42
исправить ошибки sergey123 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 01.04.2012 16:35
исправить ошибки Seferus Паскаль, Turbo Pascal, PascalABC.NET 3 06.10.2011 17:54
Исправить ошибки dragun4ik Помощь студентам 3 06.02.2010 19:10