图书馆管理系统C++代码文档格式.docx

上传人:b****5 文档编号:17238694 上传时间:2022-11-29 格式:DOCX 页数:18 大小:17.71KB
下载 相关 举报
图书馆管理系统C++代码文档格式.docx_第1页
第1页 / 共18页
图书馆管理系统C++代码文档格式.docx_第2页
第2页 / 共18页
图书馆管理系统C++代码文档格式.docx_第3页
第3页 / 共18页
图书馆管理系统C++代码文档格式.docx_第4页
第4页 / 共18页
图书馆管理系统C++代码文档格式.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

图书馆管理系统C++代码文档格式.docx

《图书馆管理系统C++代码文档格式.docx》由会员分享,可在线阅读,更多相关《图书馆管理系统C++代码文档格式.docx(18页珍藏版)》请在冰豆网上搜索。

图书馆管理系统C++代码文档格式.docx

b,sizeof(b));

if(!

file)break;

top++;

btarray[top]=b;

}

file.close();

//关闭文件

}

~bdatabase()//析构函数,将btarray[]写到book.txt文件中

{

out);

for(inti=0;

i<

=top;

i++)

{

if(btarray[i].b_del==1)

file.write((char*)&

btarray[i],sizeof(btarray[i]));

}

}

voidaddbooks()//往图书数据库中加图书

bookbk;

intno;

charbname[20];

cout<

<

"

请输入书号:

"

;

cin>

>

no;

endl<

请输入书名:

bname;

endl;

bk.b_flag=1;

bk.addbook(no,bname);

btarray[top]=bk;

return;

intfindbooks(intsuffix)//查找图书,这个函数用于借书这书操作,suffix是数组下标

for(inti=0;

i<

i++)

if(btarray[i].no==no&

&

btarray[i].b_del==1)

{

returni;

}

return-1;

intfindbooks()//查找图书,这个函数用于图书维护

charvalue[6];

{

if(btarray[i].b_flag==1)strcpy(value,"

在架"

);

if(btarray[i].b_flag==2)strcpy(value,"

借出"

cout<

书号:

btarray[i].no<

书的名称:

btarray[i].name<

图书状态:

value<

voideditbooks()//编辑图书

{

intcur;

cur=findbooks();

if(cur==-1)

{cout<

没有这本书"

return;

btarray[cur].no<

btarray[cur].name<

请修改数据:

书的名称:

btarray[cur].name;

return;

voiddelbooks()//删除图书

if(btarray[cur].b_flag==2)//删除时判断图书是否借出

cout<

该图书已经借出,请在归还后再删除。

btarray[cur].b_del=2;

voidlistbooks()//显示全部图书

if(btarray[i].b_del==1)

if(btarray[i].b_flag==1)strcpy(value,"

}

classbook

public:

intno;

//图书编号

charname[20];

//图书名称

intb_flag;

intb_del;

public:

book(){}

voidsetno(intn)

{

no=n;

intgetno()

returnno;

//返回图书编号值

}

voidsetname(charna[])

strcpy(name,na);

//字符串复制

char*getname()

returnname;

//返回图书名称

voidborbook()

b_flag=2;

//借书标志

voiddelbook()

b_del=2;

//删除标志

voidaddbook(intno,charna[])//增加图书功能

setno(no);

setname(na);

b_flag=1;

b_del=1;

//读者类

classreader

intr_del;

//1存在,2删除

intr_bor;

//1借过书,2没有借书

bookbrbook;

voidaddreader(intid,charna[])//增加读者

{

no=id;

r_del=1;

voidsetbrbook(bookbt)//设置借书标记

brbook=bt;

bookgetbrbook()

returnbrbook;

//返回借书信息

};

//读者数据库类

classrdatabase

readerrdarray[BMAX];

rdatabase()

readerrd;

reader.txt"

rd,sizeof(rd));

rdarray[top]=rd;

//关闭文件

~rdatabase()//析构函数

if(rdarray[i].r_del==1)

rdarray[i],sizeof(rdarray[i]));

voidaddreaders()//添加读者

charrname[20];

请输入学号:

请输入姓名:

rname;

rd.addreader(no,rname);

rd.r_bor=2;

rdarray[top]=rd;

intfindreaders(intsuffix)//查找读者,这个函数用于借书还书操作。

参数suffix是数组下标

if(rdarray[i].no==no&

rdarray[i].r_del==1)

intfindreaders()//查找读者,这个函数用于读者维护操作

charvalue[3];

if(rdarray[i].r_bor==1)strcpy(value,"

借"

if(rdarray[i].r_bor==2)strcpy(value,"

无"

学号:

rdarray[i].no<

姓名:

rdarray[i].name<

是否借书:

voideditreaders()//编辑读者信息

cur=findreaders();

没有该学生"

}

rdarray[cur].name;

voiddelreaders()//删除读者,读者如果借书要还书后才能删除

if(rdarray[cur].r_bor==1)

该用户借了图书,请还书后再删除"

rdarray[cur].r_del=2;

voidlistreaders()//显示所有读者

if(rdarray[i].r_del==1)

}

voidbookjiemain()//图书维护子菜单

cout<

|---------------------|"

|图书维护|"

|

(1)增加|"

|

(2)更改|"

|(3)删除|"

|(4)查找|"

|(5)显示|"

|(6)返回上一层|"

voidreaderjiemian()//读者维护子菜单

|读者维护|"

voidmainjiemian()//主界面

{

***********************************************"

*图书管理系统*"

**"

*

(1)借书*"

*

(2)还书*"

*(3)图书管理*"

*(4)用户管理*"

*(0)退出*"

voidborrowtoreturn(charbr)

//借书还书函数.参数br用来判断是“借书”还是“还书”.1为“借书”,2为“还书”

intrdid=0;

intbkid=0;

intrsuffix,bsuffix;

bdatabaset_bd;

rdatabaset_rd;

if(br=='

1'

)//借书

rsuffix=t_rd.findreaders(rdid);

bsuffix=t_bd.findbooks(bkid);

if(rsuffix==-1||bsuffix==-1)

if(t_bd.btarray[bsuffix].b_flag==2)

图书已经借出,请选择其它图书"

if(t_rd.rdarray[rsuffix].r_bor==1)

你已经借过图书,请先归还再借其它图书"

t_bd.btarray[bsuffix].b_flag=2;

t_rd.rdarray[rsuffix].r_bor=1;

t_rd.rdarray[rsuffix].brbook=t_bd.btarray[bsuffix];

return;

2'

{

if(rsuffix==-1||bsuffix==-1)

if(t_rd.rdarray[rsuffix].brbook.no==t_bd.btarray[bsuffix].no)

t_bd.btarray[bsuffix].b_flag=1;

t_rd.rdarray[rsuffix].r_bor=2;

t_rd.rdarray[rsuffix].brbook=t_bd.btarray[bsuffix];

else

请重新输入,读者借的图书号不正确"

voidbooksmange()

charin;

bdatabasebd;

do{

bookjiemain();

cin>

in;

switch(in)

case'

bd.addbooks();

break;

bd.editbooks();

3'

bd.delbooks();

4'

bd.findbooks();

5'

bd.listbooks();

6'

default:

cout<

输入错误,请从新输入。

}while(in!

='

return;

voidreadersmange()

rdatabasebd;

readerjiemian();

bd.addreaders();

bd.editreaders();

bd.delreaders();

bd.findreaders();

bd.listreaders();

intmain(intargc,char*argv[])

{charin;

mainjiemian();

borrowtoreturn(in);

booksmange();

readersmange();

0'

return0;

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1