首页 图书馆管理系统C++代码HT

图书馆管理系统C++代码HT

举报
开通vip

图书馆管理系统C++代码HT图书馆管理系统C++代码HT // tushuguanli.cpp : Defines the entry point for the console application. // #include //字符串头文件 #include //文件头文件 #include //是指标准库中输入输出流的头文件, cout就定义在这个头文件里 using namespace std;//使用名字空间std const int BMAX=50; //书最多个数 //图书管理模块 //图书类 class ...

图书馆管理系统C++代码HT
图书馆管理系统C++代码HT // tushuguanli.cpp : Defines the entry point for the console application. // #include //字符串头文件 #include //文件头文件 #include //是指标准库中输入输出流的头文件, cout就定义在这个头文件里 using namespace std;//使用名字空间std const int BMAX=50; //书最多个数 //图书管理模块 //图书类 class book { public: int no; //图书编号 char name[20]; //图书名称 int b_flag; //1为在架,2为借出 int b_del; //1为存在, 2为删除 public : book(){} //构造函数 void setno(int n) { no=n; //图书编号取值 } int getno() { return no; //返回图书编号值 } void setname(char na[]) { strcpy(name, na); //字符串复制 } char* getname() { return name; //返回图书名称 } void borbook() { b_flag=2; //借书标志 } void delbook() { b_del=2; //删除标志 } void addbook(int no,char na[]) //增加图书功能 { setno(no); setname(na); b_flag=1; b_del=1; } } ; //图书数据库类 class bdatabase { public: book btarray[BMAX]; //图书集合 int top; public: bdatabase() { book b; top=-1; fstream file("book.txt",ios::in); //打开文件 while (1) { file.read((char *)&b,sizeof(b)); if (!file) break; top++; btarray[top] = b; } file.close(); //关闭文件 } ~bdatabase() //析构函数, 将btarray[]写到book.txt文 件中 { fstream file("book.txt",ios::out); for (int i=0;i<=top;i++) { if (btarray[i].b_del==1) file.write((char *)&btarray[i],sizeof(btarray[i])); } file.close(); } void addbooks() //往图书数据库中加图 书 { book bk; int no; char bname[20]; cout<<"请输入书号: "; cin>>no; cout<>bname; cout<>no; for(int i=0; i<=top; i++) { if(btarray[i].no==no && btarray[i].b_del==1) { return i; } } return -1; } int findbooks() //查找图书,这个函数用于图书 维护 { int no; char value[6]; cout<<"请输入书号: "; cin>>no; for(int i=0; i<=top; i++) { if(btarray[i].no==no && btarray[i].b_del==1) { if(btarray[i].b_flag==1) strcpy(value,"在架"); if(btarray[i].b_flag==2) strcpy(value,"借出"); cout<<"书号: "<>btarray[cur].name; return ; } void delbooks() //删除图书 { int cur; cur = findbooks(); if (cur==-1) { return; } if(btarray[cur].b_flag==2) //删除时判断图书是否借出 { cout<<"该图书已经借出,请在归还后再删除。"<>no; cout<>rname; cout<>no; for(int i=0; i<=top; i++) { if(rdarray[i].no==no && rdarray[i].r_del==1) { return i; } } return -1; } int findreaders() //查找读者,这个函数用于读者维 护操作 { int no; char value[3]; cout<<"请输入学号: "; cin>>no; for(int i=0; i<=top; i++) { if(rdarray[i].no==no && rdarray[i].r_del==1) { if(rdarray[i].r_bor==1) strcpy(value,"借"); if(rdarray[i].r_bor==2) strcpy(value,"无"); cout<<"学号: "<>rdarray[cur].name; return ; } void delreaders() //删除读者,读者如果借书要还书 后才能删除 { int cur; cur = findreaders(); if (cur==-1) { return; } if(rdarray[cur].r_bor==1) { cout<<"该用户借了图书,请还书后再删除"<>in; switch (in) { case '1': bd.addbooks(); break; case '2': bd.editbooks(); break; case '3': bd.delbooks(); break; case '4': bd.findbooks(); break; case '5': bd.listbooks(); break; case '6': break; default:cout<<"输入错误,请从新输入。"<>in; switch (in) { case '1': bd.addreaders(); break; case '2': bd.editreaders(); break; case '3': bd.delreaders(); break; case '4': bd.findreaders(); break; case '5': bd.listreaders(); break; case '6': break; default:cout<<"输入错误,请从新输入。"<>in; switch (in) { case '1': borrowtoreturn(in); break; case '2': borrowtoreturn(in); break; case '3': booksmange(); break; case '4': readersmange(); break; case '0': break; default:cout<<"输入错误,请从新输入。"<
本文档为【图书馆管理系统C++代码HT】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_842972
暂无简介~
格式:doc
大小:42KB
软件:Word
页数:22
分类:生活休闲
上传时间:2017-09-17
浏览量:33