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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.05.2012, 15:55   #1
ENVISION
 
Регистрация: 08.04.2012
Сообщений: 5
По умолчанию Динамические структуры и метод сортировки C++

Помогите разобраться, не могу допереть как сделать((

Имеется программа
Код:
#include<iostream>
#include<iomanip>
#include<windows.h>
#include<stdio.h>
using namespace std;
struct tab {
char nazv[15],  mesto[15];
char gruppa[2];
int chislo;
}; 

int main(){
    
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251); 
    
tab tab1[4]; 
FILE *f; char n;
f=fopen("tablica.txt", "rt+");  
cout<<"Прочитать данные из файла? y/n"<<endl;
cin>>n;
if(n!='y') {                    
for(int i=0; i<4; ++i)
{ cout<<"Название ";        
  cin>>tab1[i].nazv;
  cout<<"Группа ";
  cin>>tab1[i].gruppa;
  cout<<"Место обитания ";
  cin>>tab1[i].mesto;
  cout<<"Численность ";
  cin>>tab1[i].chislo;   
 fprintf(f,"%s\n", tab1[i].nazv );
 fprintf(f,"%s\n", tab1[i].gruppa );
 fprintf(f,"%s\n", tab1[i].mesto );
 fprintf(f,"%d\n", tab1[i].chislo ); } }
  
else {    
for(int i=0; i<4; ++i) 
{ fscanf(f, "%s", tab1[i].nazv);
  fscanf(f, "%s", tab1[i].gruppa);
  fscanf(f, "%s", tab1[i].mesto);
  fscanf(f, "%d", &tab1[i].chislo);
   }}
cout<<endl<<"+----------------------------------------------------------------+"<<endl;
cout<<"|"<<setw(64)<<"Некоторые виды антилоп                         "<<"|"<<endl;
cout<<"|----------------------------------------------------------------|"<<endl;
cout<<"|"<<setw(15)<<"Название"<<"|"<<setw(10)<<"Группа"<<"|"<<setw(15)<<"Место обитания"<<"|"<<setw(21)<<"Численность популяции"<<"|"<<endl;
cout<<"|----------------------------------------------------------------|"<<endl;
for(int i=0; i<4; ++i)
cout<<"|"<<setw(15)<<tab1[i].nazv<<"|"<<setw(10)<<tab1[i].gruppa<<"|"<<setw(15)<<tab1[i].mesto<<"|"<<setw(21)<<tab1[i].chislo<<"|"<<endl;
cout<<"|----------------------------------------------------------------|"<<endl;
cout<<"|Группы: А - Настоящие антилопы, В - коровьи антилопы,           |"<<endl;
cout<<"|Н - лошадинные антилопы                                         |"<<endl;
cout<<"+----------------------------------------------------------------+"<<endl;   
fclose(f); 
cin.get();
cin.get();   
return 0;
}
Требуется доработать её так, что бы данные программы
хранились в динамической структуре данных, как связный список.
Отсортировать данные методом подсчета сравнений.

Буду очень признателен.
ENVISION вне форума Ответить с цитированием
Старый 01.06.2012, 14:32   #2
ENVISION
 
Регистрация: 08.04.2012
Сообщений: 5
По умолчанию

Народ, помогите пожалуйста реализовать хотя бы хранение данной структуры как двусвязный связный список?

Код:
#include<iostream>
#include<iomanip>
#include<windows.h>
using namespace std;
struct tab {
char nazv[15], gruppa[10], mesto[15];
int chislo;};
    
int main(){
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
tab tab1[4];    
for(int i=0; i<4; ++i){
cout<<"Название ";        
cin>>tab1[i].nazv;
cout<<"Группа ";
cin>>tab1[i].gruppa;
cout<<"Место обитания ";
cin>>tab1[i].mesto;
cout<<"Численность ";
cin>>tab1[i].chislo;}
cout<<endl<<"|----------------------------------------------------------------|"<<endl;
cout<<"|"<<setw(64)<<"Некоторые виды антилоп                         "<<"|"<<endl;
cout<<"|----------------------------------------------------------------|"<<endl;
cout<<"|"<<setw(15)<<"Название"<<"|"<<setw(10)<<"Группа"<<"|"<<setw(15)<<"Место обитания"<<"|"<<setw(21)<<"Численность популяции"<<"|"<<endl;
cout<<"|----------------------------------------------------------------|"<<endl;
for(int i=0; i<4; ++i)
cout<<"|"<<setw(15)<<tab1[i].nazv<<"|"<<setw(10)<<tab1[i].gruppa<<"|"<<setw(15)<<tab1[i].mesto<<"|"<<setw(21)<<tab1[i].chislo<<"|"<<endl;
cout<<"|----------------------------------------------------------------|"<<endl;
cout<<"|Группы: А - Настоящие антилопы, В - коровьи антилопы,           |"<<endl;
cout<<"|Н - лошадинные антилопы                                         |"<<endl;
cout<<"|----------------------------------------------------------------|"<<endl;
cin.get();
cin.get();    
return 0;
}
ENVISION вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамические структуры Natasha11 Помощь студентам 0 01.05.2012 14:34
динамические структуры Saloma Паскаль, Turbo Pascal, PascalABC.NET 3 12.12.2011 00:01
динамические структуры mego4el Помощь студентам 4 13.02.2011 00:30
Динамические структуры в С++ Aleksa_ks Помощь студентам 0 04.05.2010 21:50
динамические структуры Елена Лапуля Помощь студентам 3 04.05.2010 08:57