资源描述:
《图书信息管理系统c++程序设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、#include#include//控制台数据输入输出的函数#include//文件流#include//控制数据输出格式#includeconstintMaxb=100;//最多可存储的图书classBook{//图书类,实现对图书的描述,图书的编号,书名等功能private:inttag;//删除标记1:已删0:未删intno;//登陆号charname[20];//书名charauthor[20];//作者名charsno[20];//分类号ch
2、arcbs[20];//出版社intcbtime;//出版时间doublebookprice;//图书价格public:Book(){}//图书信息char*getname(){//获取书名returnname;}char*getauthorname(){//获取作者名returnauthor;}char*getsno(){//获取分类号returnsno;}char*getcbsname(){//获取出版社名returncbs;}intgetcbtime(){//获取出版时间returncbtime;}doublegetbookprice(){//获取图
3、书价格returnbookprice;}intgetno(){//获取登录号returnno;}intgettag(){//获取删除标记returntag;}//设置voidsetname(charna[]){//设置书名strcpy(name,na);}voidsetauthorname(charaa[]){//设置作者名strcpy(author,aa);}voidsetsno(charsa[]){//设置分类号strcpy(sno,sa);}voidsetcbs(charca[]){//设置出版社strcpy(cbs,ca);}voidsetcbti
4、me(inttime){//设置时间cbtime=time;}voidsetbookprice(doubleprice){//设置图书价格bookprice=price;}voiddelbook(){//删除图书chari;cout<<"确定删除吗?Y/N?"<>i;if(i=='y'
5、
6、i=='Y')tag=1;}voidaddbook(intn,char*na,char*aa,char*sa,char*ca,inttime,doubleprice){//增加图书tag=0;no=n;strcpy(name,na);strcpy(au
7、thor,aa);strcpy(sno,sa);strcpy(cbs,ca);cbtime=time;bookprice=price;}voiddisp(){//输出图书cout<8、ok[Maxb];//图书记录public:BDatabase(){//构造函数,将book.txt读到book[]中Bookb;top=-1;fstreamfile("book.txt",ios::in);while(1){file.read((char*)&b,sizeof(b));if(!file)break;top++;book[top]=b;}file.close();}voidclear(){//全删chari;cout<<"确定全部删除吗?Y/N?"<>i;if(i=='y'
9、
10、i=='Y')top=-1;}intaddb
11、ook(intn,char*na,char*aa,char*sa,char*ca,inttime,doubleprice){//增加图书Book*p=query1(n);if(NULL==p){top++;book[top].addbook(n,na,aa,sa,ca,time,price);return1;}return0;}Book*query1(intbookid){//按登陆号查找图书for(inti=0;i<=top;i++)if(book[i].getno()==bookid&&book[i].gettag()==0){return&book[
12、i];}returnNULL;}Book*query2(chara