图书管理系统Word文档下载推荐.docx
- 文档编号:17092761
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:19
- 大小:272.72KB
图书管理系统Word文档下载推荐.docx
《图书管理系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《图书管理系统Word文档下载推荐.docx(19页珍藏版)》请在冰豆网上搜索。
删除
退出
添加
查找
预览
书名
作者
编号
系统实现
启动系统之后,出现如下界面:
1.预览文本文件“book.txt”中的内容
运行程序后,选择1(显示文本文件“book.txt”中的内容)
2.查找
运行程序后,选择2进行查找.
3添加、保存
运行程序后,选择3进行添加并保存到”book.txt”中保存
此时”book.txt”中的内容为
5.删除、保存
程序如下
1、图书类:
(1)书籍类头文件内容
#pragmaonce
#include<
string>
iostream>
iomanip>
usingnamespacestd;
classCBook
{
public:
stringID;
stringname;
stringauthor;
stringpress;
stringpublic_time;
floatprice;
CBook*next;
friendostream&
operator<
<
(ostream&
output,CBook&
book);
friendistream&
operator>
>
(istream&
input,CBook&
};
(2)书籍类实现文件内容
#include"
stdafx.h"
CBook.h"
ostream&
output,CBook&
book)
output<
book.ID<
"
"
<
setiosflags(ios:
:
left)<
setw(8)<
book.name<
book.author
<
book.press<
'
\t'
setw(12)<
book.public_time<
book.price;
returnoutput;
}
istream&
input>
book.ID>
book.name>
book.author>
book.press>
book.public_time>
returninput;
2链表
1)链表类的头文件
classLink
CBook*head;
CBook*p;
intcreat();
//创建一个链表
intinsert();
//插入一本书
intdel();
//删除一本书
voidfind();
//查找一本书
voidshow();
//显示所有图书
voidmenu();
//总菜单
voiddel_menu();
//删除菜单
voidinsert_menu();
//插入菜单
voidfind_menu();
//查找菜单
voidput_into_file();
//写入文本文件中
2)链表的实现
Link.h"
fstream>
strstream>
intLink:
creat()//创建一个链表
head=newCBook;
p=head;
charstr[255];
ifstreaminfile("
book.txt"
);
if(!
infile)
{
cerr<
openerror!
endl;
abort();
}
infile.getline(str,255);
while(!
infile.eof())
infile.getline(str,255);
istrstreamis(str);
is>
*p;
p->
next=newCBook;
p=p->
next;
p->
next=0;
infile.close();
return0;
insert()//插入一本书
intnum;
while
(1)
insert_menu();
CBook*q=newCBook;
cin>
num;
if(num==1)
{
cout<
inputinformationaboutthenewbook:
\n"
;
cin>
*q;
q->
next=head;
p=q;
}
elseif(num==2)
inputthebook'
snamewhichyouwanttoinsertfellow\n"
stringstr;
str;
while(p->
name!
=str)
{
p=p->
}
next=p->
p->
next=q;
p=head;
else
break;
del()//删除一本书
del_menu();
p=p->
snumberwhichyouwanttodelete:
next->
ID!
CBook*q;
q=p->
next=q->
else
voidLink:
find()//查找一本书
find_menu();
sIDwhichyouwanttofind:
boolprime=false;
next!
=0)
if(p->
ID==str)
{
prime=true;
cout<
*p<
break;
}
if(prime==false)
cout<
error!
thisbookisnotexit!
snamewhichyouwanttofind:
name==str)
elseif(num==3)
sauthorwhichyouwanttofind:
author==str)
elseif(num==4)
spresswhichyouwanttofind:
press==str)
elseif(num==5)
spublic_timewhichyouwanttofind:
public_time==str)
p=head;
elseif(num==0)
operateerror!
p=head;
voidLink:
show()
menu()
********************图书管理系统**********************\n"
***1.预览2.查找3.添加4.保存5.删除0.退出"
******************************************************\n"
insert_menu()
-------------------按什么方式添加--------------------\n"
***1.从头添加2.从中间或末尾添加0.退出添加\n"
;
-----------------------------------------------------\n"
del_menu()
-------------------按什么方式删除--------------------\n"
***1.从头删除2.从中间或末尾删除0.退出删除\n"
find_menu()
-----------------按什么方式查找----------------------\n"
***1.编号.书名.作者.出版社.出版时间0.退出查找"
put_into_file()
ofstreamoutfile("
outfile.seekp(0,ios:
beg);
outfile<
编号"
书名"
作者"
出版社"
出版时间"
价格\n"
next->
outfile<
outfile.close();
3.主函数
//2008程序设计.cpp:
定义控制台应用程序的入口点。
//
LinkCB;
int_tmain(intargc,_TCHAR*argv[])
CB.creat();
CB.menu();
cout<
pleasechioce:
intnum;
CB.show();
CB.find();
CB.insert();
CB.put_into_file();
elseif(num==5)
CB.del();
1.将类的声明和成员函数的定义分离,体现封装性,也便于调试和改正。
2.用动态链表将不同的书连接起来,以便进行插入和删除等操作
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)