面向对象图书管理信息系统设计与实现(共20页).doc
《面向对象图书管理信息系统设计与实现(共20页).doc》由会员分享,可在线阅读,更多相关《面向对象图书管理信息系统设计与实现(共20页).doc(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上面向对象图书管理信息系统设计与实现#include #include #include #include /输入/输出文件流类using namespace std;const int Maxr=100;/最多的读者const int Maxb=100;/最多的图书const int Maxbor=5;/每位读者最多借五本书/读者类,实现对读者的信息的描述class Readerprivate:int tag; /删除标记 1:已删 0:未删int no; /读者编号char name10; /读者姓名int borbookMaxbor;/所借图书public:Rea
2、der() char *getname() return name; /获取姓名int gettag() return tag; /获取删除标记int getno() return no; /获取读者编号void setname(char na) /设置姓名strcpy(name,na);void delbook() tag=1; /设置删除标记 1:已删 0:未删void addreader(int n,char *na)/增加读者tag=0;no=n;strcpy(name,na);for(int i=0;iMaxbor;i+)borbooki=0;void borrowbook(int
3、bookid)/借书操作for(int i=0;iMaxbor;i+)if (borbooki=0)borbooki=bookid;return;int retbook(int bookid)/还书操作for(int i=0;iMaxbor;i+)if(borbooki=bookid)borbooki=0;return 1;return 0;void disp()/读出读者信息cout setw(5) no setw(10) name借书编号:;for(int i=0;iMaxbor;i+)if(borbooki!=0)cout borbooki |;cout endl;/读者类库,实现建立读
4、者的个人资料class RDatabaseprivate:int top; /读者记录指针Reader readMaxr;/读者记录public:RDatabase() /构造函数,将reader.txt读到read中Reader s;top=-1;fstream file(reader.txt,ios:in);/打开一个输入文件while (1)file.read(char *)&s,sizeof(s);if (!file)break;top+;readtop=s;file.close(); /关闭 reader.txtvoid clear()/删除所有读者信息top=-1;int addr
5、eader(int n,char *na)/添加读者时先查找是否存在Reader *p=query(n);if (p=NULL)top+;readtop.addreader(n,na);return 1;return 0;Reader *query(int readerid)/按编号查找for (int i=0;i=top;i+)if (readi.getno()=readerid &readi.gettag()=0)return &readi;return NULL;void disp() /输出所有读者信息for (int i=0;i=top;i+)readi.disp();void re
6、aderdata();/读者库维护RDatabase() /析构函数,将read写到reader.txt文件中fstream file(reader.txt,ios:out);for (int i=0;i=top;i+)if (readi.gettag()=0)file.write(char *)&readi,sizeof(readi);file.close();void RDatabase:readerdata()char choice;char rname20;int readerid;Reader *r;while (choice!=0)cout nnttt读 者 维 护nnntt 1
7、新 增nntt 2 更 改nntt 3 删 除nntt 4 查 找nntt 5 显 示nntt 6 全 删nntt 0 退 出 choice;switch (choice)case 1:cout readerid;cout rname;addreader (readerid,rname);break;case 2:cout readerid;r=query(readerid);if (r=NULL)cout 该读者不存在 endl;break;cout rname;r-setname(rname);break;case 3:cout readerid;r=query(readerid);if
8、(r=NULL)cout 该读者不存在 delbook();break;case 4:cout readerid;r=query(readerid);if (r=NULL)cout 该读者不存在disp();break;case 5:disp();break;case 6:clear();break;default:cout输入错误,请从新输入:;break;/图书类,实现对图书的描述,图书的编号,书名,借出,还入等class Bookprivate:int tag;/删除标记 1:已删 0:未删int no;/图书编号char name20;/书名int onshelf;/是否再架 1:再架
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 图书 管理信息系统 设计 实现 20
限制150内