C程序做的图书馆管理系统.docx
《C程序做的图书馆管理系统.docx》由会员分享,可在线阅读,更多相关《C程序做的图书馆管理系统.docx(24页珍藏版)》请在冰豆网上搜索。
C程序做的图书馆管理系统
#include
#include
#include
#include
constinti=1000;
intm=0,_m=0;
usingnamespacestd;
classlibrary;
/************************时间类*******************************/
classTime{
private:
intyear;
intmonth;
intDay;
public:
Time(){
inttemp=time(0);
intday1,day;
year=1970+(temp-10*24*3600)/(3600*24*365);
day=(temp-(year-1970)*(3600*24*365)-10*24*3600)/(3600*24)+1;
if(0if(31if(59if(90if(120if(151if(181if(212if(243if(273if(304if(334Day=day-day1;
};
intgetyear(){returnyear;}
intgetmonth(){returnmonth;}
intgetDay(){returnDay;}
};
/************************************************书籍**************************************************/
classbook{
private:
stringbookname[i];
stringwriter[i];
stringisbn[i];
stringpress[i];
stringedition[i];
stringpublishing_time[i];
stringcollection_number[i];
intnumber[i];
intbook_number;
friendclasslibrary;
public:
voidadd_book(){
stringBookname;
stringWriter;
stringIsbn;
stringPress;
stringEdition;
stringPublishing_time;
stringCollection_number;
ofstreamout("book.txt",ios:
:
app);
cout<<"你要添加多少书籍"<cin>>book_number;
cout<<"请输入书籍的信息:
(依次为书籍名称、作者、书号、出版社、版次、出版时间、馆藏编号)"<for(intn=0;n{
cout<<"书籍名称:
";
cin>>Bookname;
cout<<"作者:
";
cin>>Writer;
cout<<"书号:
";
cin>>Isbn;
cout<<"出版社:
";
cin>>Press;
cout<<"版次:
";
cin>>Edition;
cout<<"出版时间:
";
cin>>Publishing_time;
cout<<"馆藏编号:
";
cin>>Collection_number;
out<}
out.close();
}
voidread_book(){
m=0;
ifstreamin("book.txt",ios:
:
in);
for(inta=0;!
in.eof();a++){
in>>bookname[a]>>writer[a]>>isbn[a]>>press[a]>>edition[a]>>publishing_time[a]>>collection_number[a]>>number[a];
m++;
}
in.close();
}
voidjieshu(intn){
read_book();
ofstreamout("book.txt",ios:
:
out);
for(inta=0;a{if(a==n)setnumber(a,0);
out<}
out.close();
}
voidsetname(stringa,intn){bookname[n]=a;}
voidsetwriter(stringa,intn){writer[n]=a;}
voidsetisbn(stringa,intn){isbn[n]=a;}
voidsetpress(stringa,intn){press[n]=a;}
voidsetedition(stringa,intn){edition[n]=a;}
voidsetpublishing_time(inta,intn){publishing_time[n]=a;}
voidsetcollection_number(stringa,intn){collection_number[n]=a;}
voidsetnumber(inti,inta){number[i]=a;}
stringgetbname(inti){returnbookname[i];}
stringgetwriter(inti){returnwriter[i];}
stringgetisbn(inti){returnisbn[i];}
stringgetpress(inti){returnpress[i];}
stringgetedition(inti){returnedition[i];}
stringgetpublishing_time(inti){returnpublishing_time[i];}
stringgetcollection_number(inti){returncollection_number[i];}
intgetnumber(inti){returnnumber[i];}
voidshow()
{
for(inta=0;a{cout<if(number[a]==1)cout<<"在架"<elsecout<<"借出"<}
}
};
/********************************读者************************************/
classreader{
private:
stringname[i];
stringreadid[i];
stringdepartment[i];
charsort[i];
intborrowbook[i];
intydbook[i];
intb_name[i][6];
inty_name[i][3];
public:
voidREG(){///////////////注册
intcount=-1;
stringName;
stringReadid;
stringDepartment;
charSort;
ofstreamout("read.txt",ios:
:
app);
cout<<"请输入你的信息:
"<cout<<"姓名:
";
cin>>Name;
cout<<"借书证号:
";
cin>>Readid;
cout<<"系部:
";
cin>>Department;
cout<<"学生?
老师(s/学生,t/老师)";
cin>>Sort;
read_reader();
for(inta=0;a<_m;a++)
{if(name[a]==Name){cout<<"该用户名已被注册!
"<}
//out.close();
if(count==-1){cout<<"注册成功"<out<}
voidread_reader(){
_m=0;
ifstreamin("read.txt",ios:
:
in);
for(inta=0;!
in.eof();a++){
in>>name[a]>>readid[a]>>department[a]>>sort[a]>>borrowbook[a]>>ydbook[a]>>b_name[a][0]>>b_name[a][1]>>b_name[a][2]
>>b_name[a][3]>>b_name[a][4]>>b_name[a][5]>>y_name[a][0]>>y_name[a][1]>>y_name[a][2];
_m++;
}
in.close();
}
stringgetname(inta){returnname[a];}
stringgetreadid(inta){returnreadid[a];}
stringgetdepartment(inta){returndepartment[a];}
chargetsort(inta){returnsort[a];}
intgetybbook(inta){returnydbook[a];}
intgetYname(inta,int_a){returny_name[a][_a];}
intgetb_name(inta,intb){returnb_name[a][b];}
intgetborrowbook(inta){returnborrowbook[a];}
voidsetborrow(inta,int_a){borrowbook[a]=_a;}
intgetydbook(inta){returnydbook[a];}
intgety_name(inta,int_a){returny_name[a][_a];}
voidsetb_name(inta,intb,intc){b_name[a][b]=c;}
voidshow(){
read_reader();
for(inta=0;a<_m;a++)
{
cout<for(int_a=0;_a<6;_a++)cout<for(intA=0;A<3;A++)cout<cout<}
}
};
/***************************图书馆*******************************/
classlibrary{
public:
stringBookname;
stringWriter;
stringIsbn;
stringPress;
stringEdition;
intPublishing_time;
stringCollection_number;
intNumber;
booka;
intpd;
readerb;
intj;//记住登入人的位置
int_j;//记录书得位置
voidsetj(inta){j=a;}
intgetj(){returnj;}
voidset_j(inta){_j=a;}
intget_j(){return_j;}
voidfind_name(ints){
a.read_book();
intcount=-1;
cout<<"请输入书名:
";
cin>>Bookname;
for(intn=0;n{
if(Bookname==a.getbname(n)){count=n;
break;}
}
if(count==-1){cout<<"您要借阅的书籍本馆暂无"<if(s==1)find_book_interface();
elseborrow_book_interface();
}
else{
cout<<"书名:
"<cout<<"作者;"<cout<<"书号:
"<cout<<"出版社:
"<cout<<"馆藏编号:
"<if(s==0){cout<<"确借阅本书?
(y/n)";
chars;
cin>>s;
if(s=='y'){if(a.getnumber(count)==1){cout<<"借阅成功!
"<set_j(count);
a.jieshu(count);
borrow_book();
}
elsecout<<"本书已借出!
"<}
borrow_book_interface();
}
if(s==1)find_book_interface();
}
}
voidfind_press(ints){
a.read_book();
intcount=-1;
cout<<"请输入书籍出版社:
";
cin>>Press;
for(intn=0;n{
if(Press==a.getpress(n))count=n;break;
}
if(count==-1){cout<<"您要借阅的书籍本馆暂无"<if(s==1)find_book_interface();
elseborrow_book_interface();
}
else{
cout<<"书名:
"<cout<<"作者;"<cout<<"书号:
"<cout<<"出版社:
"<cout<<"馆藏编号:
"<if(s==0){cout<<"确借阅本书?
(y/n)";
chars;
cin>>s;
if(s=='y'){if(a.getnumber(count)==1){cout<<"借阅成功!
"<a.jieshu(count);
set_j(count);
}
elsecout<<"本书已借出!
"<}
borrow_book_interface();
}
if(s==1)find_book_interface();
}
}
voidfind_isbn(ints){
a.read_book();
intcount=-1;
cout<<"请输入书号:
";
cin>>Isbn;
for(intn=0;n{
if(Isbn==a.getisbn(n))count=n;break;
}
if(count==-1){cout<<"您要借阅的书籍本馆暂无"<if(s==1)find_book_interface();
elseborrow_book_interface();
}
else{
cout<<"书名:
"<cout<<"作者;"<cout<<"书号:
"<cout<<"出版社:
"<cout<<"馆藏编号:
"<if(s==0){cout<<"确借阅本书?
(y/n)";
chars;
cin>>s;
if(s=='y'){if(a.getnumber(count)==1){cout<<"借阅成功!
"<a.jieshu(count);
set_j(count);
borrow_book();
}
elsecout<<"本书已借出!
"<}
borrow_book_interface();
}
if(s==1)find_book_interface();
}
}
voidfind_collection_number(ints){
a.read_book();
intcount=-1;
cout<<"请输入书籍馆藏编号:
";
cin>>Collection_number;
for(intn=0;n{
if(Collection_number==a.getcollection_number(n))count=n;break;
}
if(count==-1){cout<<"您要借阅的书籍本馆暂无"<if(s==1)find_book_interface();
elseborrow_book_interface();
}
else{
cout<<"书名:
"<cout<<"作者;"<cout<<"书号:
"<cout<<"出版社:
"<cout<<"馆藏编号:
"<if(s==0){cout<<"确借阅本书?
(y/n)";
chars;
cin>>s;
if(s=='y'){if(a.getnumber(count)==1){cout<<"借阅成功!
"<a.jieshu(count);
set_j(count);
}
elsecout<<"本书已借出!
"<}
borrow_book_interface();
}
if(s==1)find_book_interface();
}
}
voidlibrary_interface(){////图书馆界面
intc;
cout<<"########################################"<cout<<"欢迎来到长沙学院图书馆"<cout<<"请按键选择功能"<cout<<"########################################"<cout<<"1、登陆2、用户注册"<cout<<"3、图书管理4、图书检索"<cout<<"5、退出系统"<cout<<"#########################################"<cin>>c;
switch(c)
{
case5:
break;
case4:
find_book_interface();