1、Char name20;书名Char author10;作者名Char no210;输入分类号Char dan20;输入出版单位Char time20;出版时间int priCe; / 价格int onshelf; / 是否在架 1: 在架 0: 已借publiC:Book()int getno()return no; / 获取图书编号int gettag()return tag; / 获取删除标记char *getauthor()return author; / 获取作者名char *getno2()return no2; /获取分类号char *getdan()return dan;获取出
2、版单位char *gettime()return time;获取出版时间int getprice()return price;获取图书价格void setname(char na)strcpy(name,na);设置书名void setauthor(char au)strcpy(author,au);设置作者名void setno2(char n)strcpy(no2,n);设置分类号void setdan(char d)strcpy(dan,d);设置出版单位void settime(char t)strcpy(time,t);设置出版时间 voidsetprice(int p)price=
3、p;void delbook()tag=1; / 删除图书 1:void addbook(int n,char*na,char*au,char*n2,char*da,char*ti,int pr)/增加图书 tag=0;no=n;price=pr; strcpy(name,na); strcpy(author,au); strcpy(no2,n2);strcpy(dan,da);strcpy(time,ti);onshelf=1;int borrowbook() / 借书操作if(onshelf=1)onshelf=0;return 1;return 0;void retbook()onshe
4、lf=1; / 还书操作void disp() / 输出图书coutsetw(10)nonamesetw(10)authorno2dantime price;if(onshelf=1)cout 在架 ;else cout 已借出 endl;/class BDatabase / 图书库类int top; / 图书数量记录指针Book bookMaxb; / 图书记录public:BDatabase() / 构造函数 , 将 book.txt 读到 book 中Book b;top=-1;fstream file(book.txt,ios:in);while(1)file.read(char*)&
5、b,sizeof(b);if(!file)break;top+;booktop=b;file.close();void clear()top=-1; / 全删int addbook(int n,char*na,char*au,char*n2,char*da,char*ti,int pr)/Book *p=query(n);/ 调用函数if(p=NULL)booktop.addbook(n,na,au,n2,da,ti,pr);Book *query(int bookid) / 查找图书for(int i=0;i=top;i+)if(booki.getno()=bookid&booki.gett
6、ag()=0)return &booki;return NULL;Book *query2(int bookid,char *name)/ 按书名查找图书 if(strcmp(booki.getname(),name)=0)bookid=booki.getno();Book *query3(int bookid,char *author) / 按作者查找图书 if(strcmp(booki.getauthor(),author)=0) bookid=booki.getno();void bookdata(); / 图书库维护 图书编号 图书名字 choice;switch(choice)cas
7、e 1: 添加图书操作 :n 请输入图书编号 : cinbookid; 请输入书名 :bname; 请输入图书作者 :bauthor; 请输入图书分类 :bno2; 请输入出版单位 :bdan; 请是输入出版时间 :btime; 请输入图书价格 :bprice;addbook(bookid,bname,bauthor,bno2,bdan,btime,bprice); coutbookidsetname(bname); 修改书名成功 n 请输入作者名 :setauthor(bauthor); 修改作者名成功 n break;case 3: 请输入分类号 : b-setno2(bno2); 修改分类成功 ncase 4:setdan(bdan); 修改出版单位成功 ncase 5: 请输入出版时间 :settime(btime); 修改出版时间成功 ncase 6:setpri
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1