# include & lt; Fstream>
# include & lt; Iostream>
using namespace std;
Const int BMAX=20;//set the library cap
//-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
books management module
//-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- book
The class book
{
Public:
Int no;//book number
Char name [20].//a book name
Char author [10].
Int classtion;
Char publisher [20].
int price;
Int b_flag;//1 for the frame, 2 for out
Int b_del;//1 to exist, to delete the
2Public:
The book () {}//constructor
Void setno (int n)
{
No=n;//book number values
}
Int getno ()
{
Return no;//return book number value
}
Void elegantly-named setname (char na [])
{
Strcpy (name, na);//string copy
}
Char * getname ()
{
return name;//return a book name
}
Void setauthor (char au [])
{
Strcpy (author, au);
}
Char * getauthor ()
{
Return the author;
}
Void setclasstion (int cl)
{
Classtion=cl;
}
Int getclasstion ()
{
Return classtion;
}
Void setprice (int pr)
{
Price=pr;
}
Int getprice ()
{
The return price;
}
Void setpublisher (char pu [])
{
Strcpy (publisher, pu);
}
Char * getpublisher ()
{
Return the publisher;
}
Void borbook ()
{
B_flag=2; Mark//borrow books
}
Void delbook ()
{
B_del=2;//delete logo
}
Void same (int, char na [], char au [], int cl, char pu [], int pr)//increase the function of books
{
Setauthor (au);
Setclasstion (cl);
Setpublisher (pu);
Setprice (pr);
Setno (no);
Elegantly-named setname (na);
B_flag=1;
B_del=1;
}
}
;
//-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- books database class
The class bdatabase
{
Public:
The book btarray (BMAX);//book collection
Int top;
Public:
Bdatabase ()
{
The book b;
Top=1;
Fstream file (" book. TXT ", the ios: : in);//open the file
While (1)
{
File. Read ((char *) & amp; B, sizeof (b));
if (! The file) break;
Top++;
Btarray [top]=b;
}
File. The close ();//close the file
}
~ bdatabase ()//destructors, will btarray [] wrote the book. TXT file
{
Fstream file (" book. TXT ", the ios: : out);
for (int i=0; I<=top; I++)
{
If (btarray [I] b_del==1)
File. Write ((char *) & amp; Btarray [I], sizeof (btarray [I]));
}
File. The close ();
}
Void addbooks ()//to the book database to add book
{
The book bk.
Int no;
Char bname [20].
Char bauthor [20].
Int bclasstion;
Char bpublisher [20].
Int bprice;
Cout<" Please enter a number: ";
Cin> No;
Cout
Cout
Cout
Bk. Same (no, bname bauthor, bclasstion, bpublisher, bprice);
Top++;
Btarray [top]=bk;
return;
}
Int findbooks (int suffix)//find books, this function is used to borrow this book operation, the suffix array subscript is
{
Int no;
Cout<" Please enter a number: ";
Cin> No;
for(int i=0; I<=top; I++)
{
If (btarray [I]. No==no & amp; & Btarray [I] b_del==1)
{
return i;
}
}
return -1;
}
Int findbooks ()//find books, this function is used for book maintenance
{
Int no;
Char value [6].
Cout<" Please enter a number: ";
Cin> No;
for(int i=0; I<=top; I++)
{
If (btarray [I]. No==no & amp; & Btarray [I] b_del==1)
{
If (btarray [I] b_flag==1) strcpy (value, "in plane");
If (btarray [I] b_flag==2) strcpy (value, "borrowed");
Cout<" Isbn: "& lt;
}
}
return -1;
}
Void editbooks ()//edit books
{
Int cur;
Cur=findbooks ();
If (cur==1)
{cout<" No book "& lt;
}
Cout<" Isbn: "& lt;
return ;
}
Void delbooks ()//delete books
{
Int cur;
Cur=findbooks ();
If (cur==1)
{
return;
}
If (btarray [r]. Cur b_flag==2)//deleted to determine whether a book out
{
Cout<" The book has been on loan, please delete again, after the return "& lt;
}
Btarray [r]. Cur b_del=2;
return;
}
nullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnull