C++ 图书管理系统源代码.docx

上传人:b****6 文档编号:4562834 上传时间:2022-12-06 格式:DOCX 页数:33 大小:19.93KB
下载 相关 举报
C++ 图书管理系统源代码.docx_第1页
第1页 / 共33页
C++ 图书管理系统源代码.docx_第2页
第2页 / 共33页
C++ 图书管理系统源代码.docx_第3页
第3页 / 共33页
C++ 图书管理系统源代码.docx_第4页
第4页 / 共33页
C++ 图书管理系统源代码.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

C++ 图书管理系统源代码.docx

《C++ 图书管理系统源代码.docx》由会员分享,可在线阅读,更多相关《C++ 图书管理系统源代码.docx(33页珍藏版)》请在冰豆网上搜索。

C++ 图书管理系统源代码.docx

C++图书管理系统源代码

图书管理系统

系统功能:

1.借书:

根据借书人提出的图书编号(id)查询该图书,如果该图书现存量(store)不为0,则提示输入借阅者的学号(num),为借书人办理借书手续,提示用户该书已被借出。

2.归书:

根据借书人的学号查询该读者的信息,若有该读者,则提示输入所借书籍的编号(id),为该读者办理还书手续,提示该书已还。

3.书籍管理:

弹出书籍管理界面,输入所要执行操作的号码:

(1)增加书籍:

弹出注册新书的窗口,按照提示输入所增加书籍的信息,最后,提示用户该书已被注册。

(2)删除书籍:

弹出删除书籍的窗口,输入所要删除书籍的编号(id),输出该书的信息,确认是否删除该书,1为删除,0为放弃。

(3)修改书籍:

弹出修改书籍的窗口,输入所要修改书籍的编号(id),输出该书的信息,确认是否修改该书,1为修改,0为放弃。

之后按照提示重新输入书籍的信息。

4.读者管理:

弹出读者管理界面,输入所要执行操作的号码:

(1)增加读者:

弹出注册读者的窗口,按照提示输入所增加读者的信息,最后,提示用户该读者已被注册。

(2)删除书籍:

弹出删除读者的窗口,输入所要删除读者的学号(num),输出该读者的信息,确认是否删除该读者,1为删除,0为放弃。

(3)修改书籍:

弹出修改读者的窗口,输入所要修改读者的学号(num),输出该读者的信息,确认是否修改该读者,1为修改,0为放弃。

之后按照提示重新输入读者的信息。

5.搜索:

此搜索包括两方面的搜索,书籍搜索以及读者搜索,弹出搜索的窗口,按照提示输入所要搜索的内容,1为书籍搜索,2为读者搜索:

(1)搜索书籍:

弹出搜索书籍的窗口,按照提示输入所要搜索的方式,包括按<1>书名搜索,<2>书号搜索,<3>作者搜索,<4>出版社搜索,<5>出版时间搜索;根据所选方式输入相应的内容,若是该书籍存在,则输出该书籍的信息,否则,返回主界面。

(2)搜索读者:

弹出搜索读者的窗口,按照提示输入所要搜索的方式,包括按<1>名字搜索,<2>学号搜索;根据所选方式输入相应的内容,若是该读者存在,则输出该读者的信息,否则,返回主界面。

6.退出:

退出图书管理系统。

 

图书类设计:

私有成员:

书名(name)、编号(id)、作者名(writer)、价格(price)、总存量(total)、现存量(store)、出版单位(publish)、出版时间(pub_time)。

及该书的借阅情况(借阅者名字(borrower)、借阅者学号(borr_num):

若无人借阅该书,则borrower=0,borr_num=0;否则borrower=借阅者名字,borr_num=借阅者学号)。

classbook

{

private:

charname[50];";

getch();

return0;

}

char*reader:

:

getname()

{

returnname;

}

intreader:

:

getnum()

{

returnnum;

}

char*reader:

:

getgrade()

{

returngrade;

}

char*reader:

:

getclas()

{

returnclas;

}

char*reader:

:

getsex()

{

returnsex;

}

char*reader:

:

getbook_name()

{

returnbook_name;

}

char*reader:

:

getdate()

{

returndate;

}

intreader:

:

getavaiday()

{

returnavai_days;

}

 

intreader:

:

setname(char*names)

{

strcpy(name,names);

return0;

}

intreader:

:

setnum(intnums)

{

num=nums;

return0;

}

intreader:

:

setgrade(char*grades)

{

strcpy(grade,grades);

return0;

}

intreader:

:

setclas(char*classes)

{

strcpy(clas,classes);

return0;

}

intreader:

:

setsex(char*sexs)

{

strcpy(sex,sexs);

return0;

}

intreader:

:

setbook_name(char*book_names)

{

strcpy(book_name,book_names);

return0;

}

intreader:

:

setdate(char*dates)

{

strcpy(date,dates);

return0;

}

intreader:

:

setavaiday(intavaiday)

{

avai_days=avaiday;

return0;

}

 

intpage_title()

{

system("cls");

cout<<"**************************\n";

cout<<"*☆★☆欢迎来到图书管理系统☆★☆*\n";

cout<<"**************************\n";

return0;

}

book:

:

book()

{

system("color17");

readerread;

menu:

page_title();

cout<<"★主菜单★"<

cout<<"***********"<

cout<<"*1.借书*"<

cout<<"*2.还书*"<

cout<<"*3.书籍管理*"<

cout<<"*4.读者管理*"<

cout<<"*5.搜索*"<

cout<<"*0.退出*"<

cout<<"***********"<

cout<<"请输入你的选择:

";

switch(getch())

{

case'1':

book_out();break;

case'2':

book_in();break;

case'3':

book1();break;

case'4':

();break;

case'5':

seach();break;

case'0':

exit(0);break;

default:

system("cls");

page_title();

cout<<"\n错误,请再输入一遍!

"<

}

gotomenu;

}

 

intbook:

:

book1()

{

system("cls");

page_title();

cout<<"☆管理☆"<

cout<<"***********"<

cout<<"*1.增加书籍*"<

cout<<"*2.注销书籍*"<

cout<<"*3.修改书籍*"<

cout<<"*0.返回*"<

cout<<"***********"<

cout<<"请输入你的选择:

";

switch(getch())

{

case'1':

book_add();break;

case'2':

book_del();break;

case'3':

book_mod();break;

case'0':

return_back();break;

default:

system("cls");

cout<<"\n错误,请再输入一遍!

\n";

}

return0;

}

intbook:

:

book_add()d==0)break;

}

fclose(bfp);

do

{

cout<<"请输入一个新的书号(书号从1001开始,但必须不同于已存在的书号):

";

cin>>books[n].id;

for(i=0;i

{

if(books[n].id==books[i].id&&n!

=i)

{

cout<<"\n这个书号已经存在."<

break;

}

}

}while(books[n].id==books[i].id);

cout<<"书名:

";

cin>>books[n].name;

cout<<"作者:

";

cin>>books[n].writer;

cout<<"价格:

";

cin>>books[n].price;

cout<<"总存量:

";

cin>>books[n].total;

cout<<"现存量:

";

cin>>books[n].store;

cout<<"出版社:

";

cin>>books[n].publish;

cout<<"出版时间:

";

cin>>books[n].pub_time;

cout<<"借书人:

";

cin>>books[n].borrower;

cout<<"借书者学号:

";

cin>>books[n].borr_num;

bfp=fopen("books","wb");

for(n=0;n

fwrite(&books[n],sizeof(books[n]),1,bfp);

fclose(bfp);

cout<<"\n该书已经添加.\n"<

return0;

}

 

intbook:

:

book_del()";

}

for(i=0;i

{

fread(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

cout<<"\n请输入书号:

";

cin>>id;

for(i=0,s=-1;i

{

if(books[i].id==id)

{

cout<<"书名:

"<

cout<<"书号:

"<

cout<<"作者:

"<

cout<<"价格:

"<

cout<<"总存量:

"<

cout<<"现存量:

"<

cout<<"出版社:

"<

cout<<"出版时间:

"<

cout<<"读者:

"<

cout<<"读者学号:

"<

cout<<"**********************************************************"<

cout<<"请问是否确定注销此书(1为是,0为否):

";

cin>>s;

if(s==1)

{

for(;i

books[i]=books[i+1];

}

elseif(s==0)

{

return0;

}

}

}

if(s==-1)

{

cout<<"该书不存在."<

}

if((bfp=fopen("books","wb"))==0)

{

cout<<"无法打开文件.";

}

for(i=0;i

{

fwrite(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

return0;

}

 

intbook:

:

book_mod()";

}

for(i=0;i

{

fread(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

cout<

";

cin>>id;

for(i=0,s==0;i

{

if(books[i].id==id)

{

cout<<"书名:

"<

cout<<"书号:

"<

cout<<"作者:

"<

cout<<"价格:

"<

cout<<"总存量:

"<

cout<<"现存量:

"<

cout<<"出版社:

"<

cout<<"出版时间:

"<

cout<<"读者:

"<

cout<<"读者学号:

"<

cout<<"**********************************************************"<

cout<<"是否确定修改该书籍(1为是,0为否):

";

cin>>s;

if(s==1)

{page_title();

cout<<">>>请重新输入书籍的信息:

<<<"<

do

{

cout<

";

cin>>books[i].id;

for(n=0;n

{

if(books[i].id==books[n].id&&n!

=i)

{

cout<<"该书号已存在."<

}

}

}while(books[i].id==books[n].id);

cout<<"书名:

";

cin>>books[i].name;

cout<<"作者:

";

cin>>books[i].writer;

cout<<"价格:

";

cin>>books[i].price;

cout<<"总存量:

";

cin>>books[i].total;

cout<<"现存量:

";

cin>>books[i].store;

cout<<"出版社:

";

cin>>books[i].publish;

cout<<"出版时间:

";

cin>>books[i].pub_time;

cout<<"借书人:

";

cin>>books[i].borrower;

cout<<"借书者学号:

";

cin>>books[i].borr_num;

}

elseif(s==0)

{

return0;

}

}

}

if(s==-1)

{

cout<<"该书不存在。

"<

}

if((bfp=fopen("books","wb"))==0)

{

cout<<"无法打开文件.";

}

for(i=0;i

{

fwrite(&books[i],sizeof(books[i]),1,bfp);

}

fclose(bfp);

return0;

}

 

intreader:

:

reader_1()

{

system("cls");

page_title();

cout<<"☆管理☆\n"<

cout<<"***********"<

cout<<"*1.增加读者*"<

cout<<"*2.注销读者*"<

cout<<"*3.修改读者*"<

cout<<"*0.返回*"<

cout<<"***********"<

cout<<"请输入你的选择:

";

switch(getch())

{

case'1':

reader_add();break;

case'2':

reader_del();break;

case'3':

reader_mod();break;

case'0':

return_back();break;

default:

system("cls");

cout<<"\n错误,请再输入一遍!

\n";

}

return0;

}

 

intreader:

:

reader_add()um==0)break;

}

fclose(sfp);

do

{

cout<<"请输入一个新的学号(学号从1001开始,但必须不同于已存在的学号):

";

cin>>stud[n].num;

for(i=0;i

{

if(stud[n].num==stud[i].num&&n!

=i)

{

cout<

break;

}

}

}while(stud[n].num==stud[i].num);

cout<<"名字:

";

cin>>stud[n].name;

cout<<"年级:

";

cin>>stud[n].grade;

cout<<"班级:

";

cin>>stud[n].clas;

cout<<"性别:

";

cin>>stud[n].sex;

cout<<"书名:

";

cin>>stud[n].book_name;

cout<<"借书日期:

";

cin>>stud[n].date;

cout<<"可借天数:

";

cin>>stud[n].avai_days;

sfp=fopen("students","wb");

for(n=0;n

{

fwrite(&stud[n],sizeof(stud[n]),1,sfp);

}

fclose(sfp);

cout<

return0;

}

 

intreader:

:

reader_del()";

}

for(i=0;i

{

fread(&stud[i],sizeof(stud[i]),1,sfp);

}

fclose(sfp);

cout<

";

cin>>num;

for(i=0,s==-1;i

{

if(stud[i].num==num)

{

cout<<"名字:

"<

cout<<"学号:

"<

cout<<"年级:

"<

cout<<"班级:

"<

cout<<"性别:

"<

cout<<"书名:

"<

cout<<"借书日期:

"<

cout<<"可借天数:

"<

cout<<"**********************************************************"<

cout<<"是否确定注销该读者(1为是,0为否):

";

cin>>s;

if(s==1)

{

for(;i

stud[i]=stud[i+1];

}

elseif(s==0)

{

return0;

}

if(s==-1)

{

cout<<"该读者不存在.";

}

}

}

if((sfp=fopen("students","wb"))==0)

{

cout<<"无法打开文件.";

}

for(i=0;i

{

fwrite(&stud[i],sizeof(stud[i]),1,sfp);

}

fclose(sfp);

return0;

}

 

intreader:

:

reader_mod()";

}

for(i=0;i

{

fread(&stud[i],sizeof(stud[i]),1,sfp);

}

fclose(sfp);

cout<

";

cin>>num;

for(i=0,s==-1;i

{

if(stud[i].num==num)

{

cout<<"名字:

"<

cout<<"学号:

"<

cout<<"年级:

"<

cout<<"班级:

"<

cout<<"性别:

"<

cout<<"书名:

"<

cout<<"借书日期:

"<

cout<<"可借天数:

"<<

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1