关键词不能为空

当前您在: 主页 > 英语 >

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

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-10 08:18
tags:

-

2021年2月10日发(作者:碘)









C++


课程设计



课程设计


















系部:


计算机应用技术系



专业:


计算机应用技术



班级学号:















姓名:




















一、系统功能分析





















图书管理系统




设计说明报告:


< br>图书馆作为学生学习知识的重要场所,作为信息资源的集散地,图书馆和用户借阅资料繁

< br>多,包含很多的信息数据的管理。介于这一现象,我们对于图书馆的借阅管理系统进行了全面


的分析处理,在信息高速发展的今天,促进图书馆管理运用网络技术,通过信息系统的开发,


在图书馆之间互通有无,有利于提高图书的利用率。



我的系统针对的是图书管理,面对大量纷繁复杂的图书管理工作,和不同图书的借出和归


还,需要设计一个合理的系统,它应包括图书库,读者库,和图书的借还书信息建立网上电子

< p>
图书管理系统的目的是实现无纸化图书管理,减轻管理员的工作量,



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



我的系统设计还有很多的缺点和不足,在以后的时间里要不断的完善,修改。希望老师能 够指出我的不


足,使其能够真正的,更好的应用在人们的生活中。



二、系统设计:



设计了四个类,


Reader


(读者类),


Rdata base


(读者库类),


Book


(图 书类)和


Bdatabase


(图


书库 类),读者类主要用于存储信息,其中包括读者的基本属性


int


tag


删除标记


1

< br>:已删,


0



未删


int no;


读者编号


char name[10];


读者姓名


int borbook[Maxbor];


所借图书




char


*getname()


获取姓名


int gettag()


获取删除标记


int getno()


获取读者编号


void


setname(char na[])


设置姓名


void delbook()


设置删除标记


void addreader(int n,char *na)


增加读者


void borrowbook(int bookid)


借书操作


int retbook(int bookid)


还书操作


void


disp()


输出读者信息;读者库类包括:


int


top;


读者记录指针


Reader


read[Maxr];


读者记录


RDatabase()


构 造函数,将



读到


read[]



void clear()


删除所有读者信息


int


addreader (int n,char *na)


添加读者时先查找是否存在


Reader *query(int readerid)


按编


号查找


void disp()


输出所有读者信息


void readerdata();


读者库维护


~RDatabase()


析构函


数,将


read[]


写入



文件中




图书类包括:


int


tag;


删除标记


1


:已删


0


:未删


int


no;


图书编号


char


name[20];




int


onshelf;


是否在架


1


:在架


0


:已借


char


*getname()


{return


name;}


获得书名


int


getno() {return no;}


获得书编号


int gettag() {return tag;}


获得删除标记


void


setname(char na[])


设置书名


void delbook()


删除图书


void addbook(int n,char *na)


增加


图书


int


borrowbook()


借书操作


void


retbook()


还书操作


void


disp()


输出图书图书库类包


括:


int top;


图书记录指针


Book book[Maxb];


图书记录


BDatabase()


构 造函数,将



读到


book[]



void clear()


全删


int addbook(int n,char *na)


增加图书


Book *query(int


bookid)


查找图书


void


bookdata();


图书库维护


~Bdatabase


析构函数,



b ook[]


写入



文件中




Reader(


读者类


)


Int tag


Int no


Char name[10]


Int borbook[maxbor]


Reader()


Char *getname()


Int gettag()


Int getno()


Void setname(char na[])


Void delreader()


Void addreader(int n,char


*na)


Void borrowbook(int bookid)


Int retbook(int bookid)


Void disp()
















三、代


Book


(图书类)



Int tag


Int no


Char name[20]


Int oneself


Book()


Char *getname()


Int getno()


Int gettag()


Void setname(char na[])


Void delbook()


Void


addbook(int


n,char


*na)


Void borrowbook()


Int retbook()


码编写:



Void disp()


#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;


Rdatabase


(读者库类)



Int top


Reader read[maxr]


Bdatabase


(图书库类)



Rdatabase()


Int top


Void clear()


Book book[maxb]


Int addreader(int n,char


BDatabase()


*na)


Void clear()


Reader *query(int readerid)


Int addbook(int n,char *na)


Void disp()


book *query(int bookid)


Void readerdata()


Void disp()


~Rdatabase()


Void bookdata()


~BDatabase()



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(




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(




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





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






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





();



}


};




void RDatabase::readerdata()


{



int choice=1;



char rname[20];



int readerid;



Reader *r;



while(choice!=0)



{



if (choice!=0)



{




cout<<


读者维护



:新增


2


:更改


3


:删除


4


:查找


5


:显示


6


:全删


0



退出


=>




cin>>choice;




if(choice==0)continue;





if(choice==1)



{





cou t<<


输入读者编号:






cin>>readerid;





cou t<<


输入读者姓名:






cin>>rname;





addreader(readerid,rname);



}



else



if(choice==2)




{





cout<<

输入读者编号:






cin>>readerid;





r=query(readerid);





if (r==NULL)





{






cout<<


该读者不存在







continue;





}





cout<<


输入新的姓名:






cin>>rname;





r->setname(rname);




}




else



if(choice==3)




{





cout<<


输入读者编号:






cin>>readerid;





r=query(readerid);





if (r==NULL)





{






cout<<


该读者不存在



continue;





}





r->delbook();

-


-


-


-


-


-


-


-



本文更新与2021-02-10 08:18,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/627642.html

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

  • 余华爱情经典语录,余华爱情句子

    余华的经典语录——余华《第七天》40、我不怕死,一点都不怕,只怕再也不能看见你——余华《第七天》4可是我再也没遇到一个像福贵这样令我难忘的人了,对自己的经历如此清楚,

    语文
  • 心情低落的图片压抑,心情低落的图片发朋友圈

    心情压抑的图片(心太累没人理解的说说带图片)1、有时候很想找个人倾诉一下,却又不知从何说起,最终是什么也不说,只想快点睡过去,告诉自己,明天就好了。有时候,突然会觉得

    语文
  • 经典古训100句图片大全,古训名言警句

    古代经典励志名言100句译:好的药物味苦但对治病有利;忠言劝诫的话听起来不顺耳却对人的行为有利。3良言一句三冬暖,恶语伤人六月寒。喷泉的高度不会超过它的源头;一个人的事

    语文
  • 关于青春奋斗的名人名言鲁迅,关于青年奋斗的名言鲁迅

    鲁迅名言名句大全励志1、世上本没有路,走的人多了自然便成了路。下面是我整理的鲁迅先生的名言名句大全,希望对你有所帮助!当生存时,还是将遭践踏,将遭删刈,直至于死亡而

    语文
  • 三国群英单机版手游礼包码,三国群英手机单机版攻略

    三国群英传7五神兽洞有什么用那是多一个武将技能。青龙飞升召唤出东方的守护兽,神兽之一的青龙。玄武怒流召唤出北方的守护兽,神兽之一的玄武。白虎傲啸召唤出西方的守护兽,

    语文
  • 不收费的情感挽回专家电话,情感挽回免费咨询

    免费的情感挽回机构(揭秘情感挽回机构骗局)1、牛牛(化名)向上海市公安局金山分局报案,称自己为了挽回与女友的感情,被一家名为“实花教育咨询”的情感咨询机构诈骗4万余元。

    语文