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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.05.2014, 20:42   #1
MyLifeStyle
Пользователь
 
Регистрация: 29.04.2014
Сообщений: 25
Сообщение Оператор условия и выравнивание

Функция поиска.

Как сделать чтобы вылетало сообщение один раз (Нету такого студента), вне цикла.
Как сделать выравнивание рамки?
При считывании выдаёт:

__________________________
| Имя студента:asdasdasd |
| Фамилия студента:asdasdasd |
| Код:111111 |
| Група:11111 |
|_________________________|

Надо

___________________________
| Имя студента:фывфывфыв |
| Фамилия студента:вфывфывв |
| Код:111111 |
| Група:11111 |
|__________________________|


Код:
void Serch_Student()
{
ifstream fi("Students.txt", ios::binary);
if(!fi) cout<<"Error with file\n";
else {fi. seekg(0,ios::end);
int size=fi.tellg();
size=size/sizeof(Student);
Student * Student_1= new Student[size];
fi.seekg(0, ios::beg);
fi.read ((char*)Student_1,sizeof(Student)*size);
Student findStudent;
cout<<"---------Name_Student----------"<<endl;
cout<<"\t1.Имя студента: ";
cin>>findStudent.Name_Stu;
for(int i=0; i < size; i++)
 
if(!strncmp(Student_1[i].Name_Stu, findStudent.Name_Stu,sizeof(findStudent.Name_Stu)/sizeof(char)))
{
cout<<"\t _________________________________________________"<<endl;
cout<<"\t| Имя студента:"<<Student_1[i].Name_Stu<<"               | \n";
cout<<"\t| Фамилия студента:"<<Student_1[i].Surname_Stu<<"    | \n";
cout<<"\t| Код:"<<Student_1[i].Code_Stu<<"                              | \n";
cout<<"\t| Група:"<<Student_1[i].Groupe_Stu<<"                        | \n";
cout<<"\t|________________________________________________|"<<endl;
}
else 
{
    cout<<"Нету"<<endl;
}
}
}
MyLifeStyle вне форума Ответить с цитированием
Старый 12.05.2014, 18:54   #2
MyLifeStyle
Пользователь
 
Регистрация: 29.04.2014
Сообщений: 25
По умолчанию

помогите пожалуйста
MyLifeStyle вне форума Ответить с цитированием
Старый 12.05.2014, 19:49   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Как сделать чтобы вылетало сообщение один раз (Нету такого студента), вне цикла.
Код:
bool b=false;
for(int i=0; i < size; i++)
 
if(!strncmp(Student_1[i].Name_Stu, findStudent.Name_Stu,sizeof(findStudent.Name_Stu)/sizeof(char)))
{ b=true;
cout<<"\t _________________________________________________"<<endl;
cout<<"\t| Имя студента:"<<Student_1[i].Name_Stu<<"               | \n";
cout<<"\t| Фамилия студента:"<<Student_1[i].Surname_Stu<<"    | \n";
cout<<"\t| Код:"<<Student_1[i].Code_Stu<<"                              | \n";
cout<<"\t| Група:"<<Student_1[i].Groupe_Stu<<"                        | \n";
cout<<"\t|________________________________________________|"<<endl;
}

if(!b)   cout<<"Нету"<<endl;
Цитата:
Как сделать выравнивание рамки?
http://msdn.microsoft.com/ru-ru/library/hh438469.aspx
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Оператор условия yul111-95 Помощь студентам 1 18.11.2012 18:56
Оператор условия nattaella Общие вопросы Delphi 1 30.06.2011 21:04
Оператор условия или как сделать чтобы анализировало все переменные eriskay Помощь студентам 9 07.01.2011 00:19
Оператор условия [Smarik] Помощь студентам 8 22.02.2008 18:49