// tushuguanli.cpp : Defines the entry point for the console application.
#include
#include
#include /
using namespace std;
const int BMAX=50;
//图书数据库类
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<<"输入错误,请从新输入。"<
展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
相关搜索