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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.01.2010, 01:54   #1
JulLy
Профессионал
Пользователь
 
Аватар для JulLy
 
Регистрация: 27.04.2009
Сообщений: 37
Печаль Запутанная структура 2

Описать структуру с именем TRAIN,содержащую поля:
название пункта
номер поезда
Вложенную структуру Time_otpravl отправления содержащую поля
Часы
минуты


Написать программу,выполняющую следующие действия:
1)ввод с клав-ры данных в массив,состоящий из 6 структур типа TRAIN
2)Записи должны быть размещены в алфавитном порядке по названию пунктов назначения
3)Вывод на экран информации о поездах,отправляющихся после введённого с клав-ры времени

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


Код:
struct TRAIN
{ char punkt[20];
  int nomer;

struct
 {
  int hours;
  int minutes;
 } Time_otpravl;
};

void main ()
 {
 clrscr ();
  const int n=6;
  int mas[n];
  for (int i=0;i<n;i++)
  { cout<<"Vvedite nazvanie punkta,nomer poezda,chasi,minuti"<<endl;
    cin>>mas[i];
  };

//Esli net takix reisov zadanie 1.4

  char hour[2],minute[2];
  cout<<"Vvedite chas otpravleniya";
  cin>>hour;
  cout<<"Vvedite minuti otpravleniya";
  cin>>minute;
  int flag=0;
   for (i=0;i<n;i++)
    if (strcmp(mas[i].hour,hours) && strcmp(mas[i].minute,minutes))==0)
    {flag=1;
      cout<<setw(2)<<mas[i].hours,minutes
	  <<setw(20)<<mas[i].punkt
	  <<setw(100)<<mas[i].nomer<<endl;
    }

  if (flag==0) cout<<"Takih reisov net";

А вот с алфавитным порядком,вообще ни как не получается=(.Заранее спасибо за помощь!
JulLy вне форума Ответить с цитированием
Старый 29.01.2010, 09:46   #2
RoS
Форумчанин
 
Аватар для RoS
 
Регистрация: 13.12.2009
Сообщений: 272
По умолчанию

По-моему ты запутался с

if (strcmp(mas[i].hour,hours) && strcmp(mas[i].minute,minutes))==0)

hour и hourS

И вообще mas у тебя типа int, а ты к нему операцию точка выполняешь!
Если я помог вам - порадуйте меня, нажмите на весы слева
RoS вне форума Ответить с цитированием
Старый 29.01.2010, 10:10   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Согласен с RoS'ом.
Тут нужно как минимум вводить так:
Код:
  TRAIN mas[n];
  for (int i=0;i<n;i++)
  { cout<<"Vvedite nazvanie punkta,nomer poezda,chasi,minuti"<<endl;
	cin>>mas[i].punkt;
	cin>>mas[i].nomer;
	cin>>mas[i].Time_otpravl.hours;
	cin>>mas[i].Time_otpravl.minutes;
  };
Ну и работать с полями так же точно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запутанная структура JulLy Общие вопросы C/C++ 3 28.01.2010 22:59
структура hungry Общие вопросы C/C++ 11 25.06.2009 20:31
структура Cpluser Общие вопросы C/C++ 4 16.06.2009 17:42
Структура SL1CK Общие вопросы C/C++ 8 08.06.2009 21:31
Структура IF в С++ lebrosha Помощь студентам 3 22.05.2009 00:09