图书馆信息管理系统(C ).doc
《图书馆信息管理系统(C ).doc》由会员分享,可在线阅读,更多相关《图书馆信息管理系统(C ).doc(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、图书馆信息管理系统(C+).txt精神失常的疯子不可怕,可怕的是精神正常的疯子!#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;/所借图书
2、public:Reader() 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 borro
3、wbook(int 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=-
5、1;int addreader(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
6、();void readerdata();/读者库维护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读 者 维
7、 护nnntt 1 新 增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(reader
8、id);if (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;/是否
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书馆信息管理系统C 图书馆 信息管理 系统
限制150内