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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.03.2012, 22:18   #1
Lost7070
Пользователь
 
Регистрация: 02.03.2012
Сообщений: 25
По умолчанию Работа с файлами на С++

Здравствуйте ! Написал код программы, что-то на подобии базы данных библиотеки. Осталось только добавить запись и считывание данных с файла (или файлов). Помогите чем можете, никак не могу разобраться.
Заранее благодарен.
Код ниже.
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
using namespace std;
struct library
{
char name[30];
char author[30];
int year;
};
library books[300];
int _tmain(int argc, _TCHAR* argv[])
{
int i=0,j,num;
cout<<"Начальное количество книг: "; cin>>j;
for(i;i<j;i++)
{
cout<<i+1<<". ";
cout<<"Название книги: "; cin>>books[i].name;
cout<<"Автор книги: "; cin>>books[i].author;
cout<<"Год издания: "; cin>>books[i].year;
system("cls");
}
i=0;
cout<<"Введены книги:"<<endl;
for(i;i<j;i++)
{
cout<<i+1<<". "<<books[i].author<<" "<<books[i].name<<" "<<books[i].year<<endl;
}
start:
int choice=6;
while(choice>5)
{
cout<<"Действия над каталогом:\n 1.Добавление записей\n 2.Редактирование записей\n 3.Удаление записей\n 4.Поиск\n 5.Завершение работы.";
cin>>choice;
if(choice>5)
cout<<"Ошибка ввода ! Повторите попытку.\n";
}
if (choice==1)
{
cout<<"Количество книг: "; cin>>num;
for(i=0;i<num;i++)
{
cout<<"Название книги: "; cin>>books[j].name;
cout<<"Автор книги: "; cin>>books[j].author;
cout<<"Год издания: "; cin>>books[j].year;
system("cls");
j++;
}
cout<<"Новый список книг: "<<endl;
for(i=0;i<j;i++)
cout<<i+1<<". "<<books[i].author<<" "<<books[i].name<<" "<<books[i].year<<endl;
goto start;
}
if (choice==2)
{
cout<<"Номер редактируемой книги:"; cin>>num;
cout<<"Новое название книги: "; cin>>books[num-1].name;
cout<<"Новый автор: "; cin>>books[num-1].author;
cout<<"Новый год издания "; cin>>books[num-1].year;
cout<<"Новый список книг: "<<endl;
for(i=0;i<j;i++)
cout<<i+1<<". "<<books[i].author<<" "<<books[i].name<<" "<<books[i].year<<endl;
goto start;
}
int c;
if (choice==3)
{
cout<<"Номер удаляемой записи:"; cin>>num;
for (i=num-1;i<j;i++)
{
for(c=0;c<30;c++)
{
books[i].name[c]=books[i+1].name[c];
books[i].author[c]=books[i+1].author[c];
}
books[i].year=books[i+1].year;
}
j--;
system("cls");
cout<<"Новый список книг: "<<endl;
for(i=0;i<j;i++)
cout<<i+1<<". "<<books[i].author<<" "<<books[i].name<<" "<<books[i].year<<endl;
goto start;
}
int menu=3;
char name[30];
if (choice==4)
{
search:
cout<<"Поиск по :\n 1.Названию.\n 2.Автору\n 3.Году издания. \n"; cin>>num;
if (num==1)
{
c=0;
cout<<"Введите название книги: "; cin>>name;
system("cls");
cout<<"Результаты поиска:\n";
for (i=0;i<j;i++)
{
if (strstr(books[i].name,name)!=NULL)
{
c++;
cout<<c<<". Автор книги: "<<books[i].author<<" Название книги: "<<books[i].name<<" Год издания: "<<books[i].year<<endl;
}
}
while(menu>2)
{
cout<<" 1.Назад\n 2.В главное меню\n"; cin>>menu;
if(menu==1)
goto search;
if(menu==2)
goto start;
if(menu>2)
cout<<"Ошибка ввода! Повторите попытку.\n";
}
}
if (num==2)
{
c=0;
cout<<"Введите автора книги: "; cin>>name;
system("cls");
cout<<"Результаты поиска:\n";
for (i=0;i<j;i++)
{
if (strstr (books[i].author,name)!=NULL)
{
c++;
cout<<c<<". Автор книги: "<<books[i].author<<" Название книги: "<<books[i].name<<" Год издания: "<<books[i].year<<endl;
}
}
menu=3;
while(menu>2)
{
cout<<" 1.Назад\n 2.В главное меню\n"; cin>>menu;
if(menu==1)
goto search;
if(menu==2)
goto start;
if(menu>2)
cout<<"Ошибка ввода! Повторите попытку.\n";
}
}
if (num==3)
{
int year;
c=0;
cout<<"Введите год издания книги: "; cin>>year;
system("cls");
cout<<"Результаты поиска:\n";
for(i=0;i<j;i++)
{
cout<<"Результаты поиска:\n";
if (books[i].year==year)
{
c++;
cout<<c<<". Автор книги: "<<books[i].author<<" Название книги: "<<books[i].name<<" Год издания: "<<books[i].year<<endl;
}
}
menu=3;
while(menu>2)
{
cout<<" 1.Назад\n 2.В главное меню\n"; cin>>menu;
if(menu==1)
goto search;
if(menu==2)
goto start;
if(menu>2)
cout<<"Ошибка ввода! Повторите попытку.\n";
}
}
}
system("pause");
}
Lost7070 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с файлами Funy Помощь студентам 0 16.01.2012 15:44
Работа с файлами Александр16 Паскаль, Turbo Pascal, PascalABC.NET 0 05.06.2011 15:17
Работа с файлами kop Общие вопросы C/C++ 3 30.05.2011 20:07
Работа с файлами С++ Игорь777 Помощь студентам 2 27.04.2009 23:25
Работа с файлами basss Помощь студентам 2 22.12.2008 01:07