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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.11.2011, 14:07   #1
Furutsu
 
Регистрация: 30.10.2011
Сообщений: 7
По умолчанию Как сделать поиск в фаиле?

Есть прога, которая делает заполнения структуры и записывает ее в бинарный фаил(
Пользователь вводит данные, они сереализуются и сохраняются в отдельном бинарном файле файле).
Что нужно: Нужно чтобы производился поиск в этом файле и если найдено то выводил на экран... ( к примеру пользователю предлогается ввести имя ученика, он вводит его, и если есть ученик с таким именнем в нашем файле, то на экран ввыводиться все что связанно с этим учеником, если нет то выводится сообщения такого ученика нет.)
#include <iostream>
#include <stdio.h>
#include <string>

#include <algorithm>



struct SCHOOL
{
char name_students[20]; //имя ученика
float name_classe; //имя класса
char name_liter; //имя буквы
int col_predmetov; //кол-во предметов
};
SCHOOL schl[10];

using namespace std;
int main ()
{


cout<<"БД по Школе №19!"<<endl;

cout<<"Введите имя ученика"<<endl;
cin>>schl[1].name_students;
cout<<"Введите номер класса:" << endl;
cin>>schl[1].name_classe;
cout<<"Введите букву класса:"<<endl;
cin>>schl[1].name_liter;
cout<<"Введите кол-во предметов:"<<endl;
cin>>schl[1].col_predmetov;


{
FILE* f = fopen("file23", "wb");
fwrite((char*)&schl, sizeof(schl), 1, f);
fclose(f);
}
{
FILE* f = fopen("file23", "rb");
fread((char*)&schl, sizeof(schl), 1, f);
fclose(f);
cout<<"Введите имя ученика:" <<endl;
cin>>std::search(schl.begin(), schl.end()); // Проблема тут не могу задать поиск
cout<<endl;
cout<<"Имя ученика :"<<schl[1].name_students<< endl;
cout<<"Номер класса :"<<schl[1].name_classe<<endl;
cout<<"Буква класса :"<< schl[1].name_liter<<endl;
cout<<"Количество предметов :"<< schl[1].col_predmetov<<endl;
}
}

Последний раз редактировалось Furutsu; 06.11.2011 в 14:11. Причина: ошибка в описании
Furutsu вне форума Ответить с цитированием
Старый 06.11.2011, 14:18   #2
Furutsu
 
Регистрация: 30.10.2011
Сообщений: 7
По умолчанию

может эту часть :
{
FILE* f = fopen("file23", "rb");
fread((char*)&schl, sizeof(schl), 1, f);
fclose(f);
cout<<"Введите имя ученика:" <<endl;
cin>>std::search(schl.begin(), schl.end()); // Проблема тут не могу задать поиск
cout<<endl;
cout<<"Имя ученика :"<<schl[1].name_students<< endl;
cout<<"Номер класса :"<<schl[1].name_classe<<endl;
cout<<"Буква класса :"<< schl[1].name_liter<<endl;
cout<<"Количество предметов :"<< schl[1].col_predmetov<<endl;
}

Задать как нить через цикл? Если есть такой ученик то выводит инфу если нету то
cout<<"Ученика с таким именем не найденно!"<<endl;
return 0;

подскажите как задать поиск. Гугл не чем не помог хз какой оператор выполняет поиск
Furutsu вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать такой поиск? lyb4eg Microsoft Office Excel 8 15.08.2011 11:01
Как сделать поиск по реестру Lotu C++ Builder 0 27.02.2011 15:09
как сделать поиск в excel? zolo Microsoft Office Excel 9 23.02.2011 16:21
Как сделать поиск по компоненту Tmemo?? photozaz Общие вопросы Delphi 4 16.04.2008 08:23
Как сделать поиск файлов в папке BETONOMESHALKA Общие вопросы Delphi 3 01.02.2008 22:43