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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.12.2012, 16:58   #1
cat_gav
Пользователь
 
Регистрация: 22.10.2012
Сообщений: 17
По умолчанию массив записей

Помогите дописать программу. Данн массив записей семья состояший из нескольких семей (включает в себя отца мать и 3 дитей). Найти и вывести имя младшего ребенка у отца "ivan"


Код:


#include "stdafx.h"
#include "iostream"
#include "conio.h"
#include <windows.h>


using namespace std;

struct Data 		
	{
		unsigned day; 		
		unsigned month;		
		unsigned year;
	};

struct T_human
	{
		char fio[40];
		Data d_birth;
    };

struct family		
	{
	T_human  pop ;
	T_human  mom ;
	T_human  son [3];
	};




T_human vvod_struc(int i);
void wr_struc (T_human a);


int main(array<System::String ^> ^args)
{
	setlocale(LC_ALL, "russian");


    T_human son [3];
	T_human pop [1];
	T_human mom [1];



for(int i = 0; i < 1; i++)       // отец          
{                                              
      pop[i]=vvod_struc(i);    
}

for(int i = 0; i < 1; i++)     // Мать
{
	mom[i]=vvod_struc(i);    
}
                                        
for(int i = 0; i < 3; i++)  // дети
{ 	
		son[i]=vvod_struc(i);    
};

	cout << endl;
	cout << "выходная таблица" <<endl; 
   	cout << "!фио род дат рож !    фио   детей       !  дата рождения  ! \n";
	
	int i_min = 0;
	unsigned min_year = 0;
   


  for(int i = 0; i < 1; i++)  // отец
{
	wr_struc(pop[i]);	
}
 for(int i = 0; i < 1; i++)       //мать 
{
	wr_struc(mom[i]);	
}
 for(int i = 0; i < 3; i++)      // дети нахождение младшего по году 
 { 
        wr_struc(son[i]);   
      if (son[i].d_birth.year > min_year) 
    {    
       min_year=son[i].d_birth.year;  
       
       i_min=i;
            }
}
        
     for(int i = 0; i < 1; i++)
 {
   //   wr_struc(pop[i]); 
      if (strcmp(pop[i].fio,"ivan")==0)
      {
		  cout << "Младший ребенок    ";
        puts(son[i_min].fio);
      }
 
      else 
      {
          cout << "нет такого" << endl;
      }
 }		 	
		_getch();
        return 0;
} 

T_human vvod_struc(int i)
{
	T_human a; 
	char c;
	cout << endl << " Информация о семье \n";
	cout << " ФИО ";
	cin.getline(a.fio,40);
	cout << endl << "дата рождения: \n";
	cout <<" день (1-31) ";
	cin >> a.d_birth.day;
	cin.get(c);
	cout << " месяц (1-12)";
	cin >> a.d_birth.month;
	cin.get(c);
	cout << " год ";
	cin >> a.d_birth.year;
	cin.get(c);
	return a;
};
void wr_struc (T_human a)
{
	printf( "      %20s ! %2d.%2d.%4d\n",a.fio,a.d_birth.day,a.d_birth.month,a.d_birth.year);
}
cat_gav вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создать массив записей в соответствии с заданной структурой. Количество записей не больше 10. zulja Паскаль, Turbo Pascal, PascalABC.NET 0 21.05.2012 07:50
Массив записей. GripEnemy Visual C++ 0 05.12.2011 22:34
Массив записей... eragon_ua Паскаль, Turbo Pascal, PascalABC.NET 2 29.03.2011 15:08
массив записей qwerty98765 Помощь студентам 3 27.04.2010 19:07
Создать массив записей((( Настенька..Блонди Паскаль, Turbo Pascal, PascalABC.NET 2 28.12.2008 19:39