c++课程设计及——图书管理系统(窗口界面)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C++课程设计

课程设计

系部:计算机应用技术系

专业:计算机应用技术

班级学号:

姓名:

一、系统功能分析:

图书管理系统

设计说明报告:

图书馆作为学生学习知识的重要场所,作为信息资源的集散地,图书馆和用户借阅资料繁多,包含很多的信息数据的管理。介于这一现象,我们对于图书馆的借阅管理系统进行了全面的分析处理,在信息高速发展的今天,促进图书馆管理运用网络技术,通过信息系统的开发,在图书馆之间互通有无,有利于提高图书的利用率。

我的系统针对的是图书管理,面对大量纷繁复杂的图书管理工作,和不同图书的借出和归还,需要设计一个合理的系统,它应包括图书库,读者库,和图书的借还书信息建立网上电子图书管理系统的目的是实现无纸化图书管理,减轻管理员的工作量,

对过时、损失的图书进行删除,达到降低成本提高工作效率的目标。

我的系统设计还有很多的缺点和不足,在以后的时间里要不断的完善,修改。希望老师能够指出我的不足,使其能够真正的,更好的应用在人们的生活中。

二、系统设计:

三、代

码编写: #include

#include #include #include

const int Maxr=100; const int Maxb=100; const int Maxbor=5;

class Reader {

int tag; int no;

char name[10];

int borbook[Maxbor]; 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; }

void addreader(int n,char *na) {

tag=0;

no=n;

strcpy(name,na);

for (int i=0;i

borbook[i]=0;

}

void borrowbook(int bookid)

{

for (int i=0;i

if (borbook[i]==0)

{

borbook[i]=bookid;

return;

}

}

int retbook(int bookid)

{

for (int i=0;i

if (borbook[i]==bookid)

{

borbook[i]=0;

return 1;

}

return 0;

}

void disp()

{

cout<

for (int i=0;i

if (borbook[i]!=0)

cout<

cout<<"]"<

}

};

class RDatabase

{

int top;

Reader read[Maxr];

public:

RDatabase()

{

Reader s;

top=-1;

fstream file("reader.txt",ios::in);

while (1)

{

((char *)&s,sizeof(s));

if (!file) break;

top++;

read[top]=s;

}

();

}

void clear()

{

top=-1;

}

int addreader (int n,char *na)

{

Reader *p=query(n);

if (p==NULL)

{

top++;

read[top].addreader(n,na);

return 1;

}

return 0;

}

Reader *query(int readerid)

{

for (int i=0;i<=top;i++)

if (read[i].getno()==readerid && read[i].gettag()==0) return &read[i];

return NULL;

}

void disp()

{

for (int i=0;i<=top;i++)

{

if (read[i].gettag()==0)

read[i].disp();

}

}

void readerdata();

~RDatabase()

{

fstream file("reader.txt",ios::out);

for (int i=0;i<=top;i++)

if (read[i].gettag()==0)

((char *)&read[i],sizeof(read[i]));

();

}

};

相关文档
最新文档