#include<iostream>
#include<fstream>
#include<windowsh>
#include<stdlibh>
using namespace std;
void mainmenu();
void Manage_Book();
void input_Book();
void input_Reader();
void New_Book();
void Seek_Book();
void Borrow_Manage();
void Borrow_Book();
void Return_Book();
void Output_Message();
void Exit_System();
int u,v=3,k=0;
struct Book
{
char name[20];
int booknumber;
int num_present;
int num_all;
}book[1000];
struct Reader
{
char name[20];
int readernumber;
int card;
}reader[3];
void mainmenu()
{
int Num_Choice1,flag=1;
system("color E");
for(;k<=0;k++)
{
input_Book();
input_Reader();
}
while(flag==1)
{
system("cls");
cout<<"\t\t\t◆◆◆◆◆主菜单◆◆◆◆◆"<<endl
<<"\t\t\t☆ 1图书管理 ☆"<<endl
<<"\t\t\t☆ 2借阅管理 ☆"<<endl
<<"\t\t\t☆ 3输出信息 ☆"<<endl
<<"\t\t\t☆ 4退出系统 ☆"<<endl
<<"\t\t\t◆◆◆◆◆◆◆◆◆◆◆◆◆"<<endl;
cout<<"请输入所需要的服务编码"<<endl;
cin>>Num_Choice1;
switch(Num_Choice1)
{
case 1:
Manage_Book();
break;
case 2:
Borrow_Manage();
break;
case 3:
Output_Message();
break;
case 4:
Exit_System();
flag=0;
break;
default:
flag=0;
cout<<"输入有误!!"<<endl;
}
}
}
void Manage_Book()
{
int flag1=1,Num_Choice2;
system("cls"); while(flag1==1)
{
cout<<"\t\t\t◆◆◆◆◆◆◆◆◆◆◆◆◆"<<endl
<<"\t\t\t☆ 1新书入库 ☆"<<endl
<<"\t\t\t☆ 2图书查询 ☆"<<endl
<<"\t\t\t☆ 3返回主菜单 ☆"<<endl
<<"\t\t\t◆◆◆◆◆◆◆◆◆◆◆◆◆"<<endl;
cin>>Num_Choice2;
switch(Num_Choice2)
{
case 1:
flag1=2;
New_Book();
break;
case 2:
flag1=2;
Seek_Book();
break;
case 3:
mainmenu();
default:
flag1=1;
cout<<"输入有误!"<<endl;
system("pause");
system("cls");
}
}}
void input_Book()
{
cout<<"请依照提示输入现有的三本图书的信息:"<<endl;
for(int i=0;i<3;i++)
{
cout<<"书名:"<<endl;
cin>>book[i]name;
cout<<"书号:"<<endl;
cin>>book[i]booknumber;
cout<<"库存量:"<<endl;
cin>>book[i]num_all;
cout<<"现存量:"<<endl;
cin>>book[i]num_present;
}
}
void New_Book()
{
system("cls");
int j;
char newbook_name[20];
cout<<"请输入新书书名:"<<endl;
cin>>newbook_name;
for(j=0;j<1000;j++)
{
if(strcmp(newbook_name,book[j]name)==0)
{
book[j]num_all++;
book[j]num_present++;
break;
}
}
if(j==1000)
{
cout<<"请为此新书编号:"<<endl;
v++;
cin>>book[v]booknumber;
strcpy(book[v]name,newbook_name);
book[v]num_all=1;
book[v]num_present=1;
}
else cout<<"已有此书,库存量加一"<<endl;
system("pause");
}
void Seek_Book()
{
system("cls");
int k,booknumber;
cout<<"请输入所要查询的书号:"<<endl;
cin>>booknumber;
for(k=0;k<1000;k++)
{
if(book[k]booknumber==booknumber)
{
cout<<"书号:"<<booknumber<<endl;
cout<<"书名:"<<book[k]name<<endl;
cout<<"库存量:"<<book[k]num_all<<endl;
cout<<"现存量:"<<book[k]num_present<<endl;
system("pause");
break;
}
}
if(k==1000)
{
cout<<"未找到此书!!"<<endl;
system("pause");
}
}
void Borrow_Manage()
{
int flag=1;
system("cls");
int Num_Choice3;
while(flag==1)
{
cout<<"\t\t\t◆◆◆◆◆◆◆◆◆◆◆◆◆"<<endl
<<"\t\t\t☆ 1借书登记 ☆"<<endl
<<"\t\t\t☆ 2还书管理 ☆"<<endl
<<"\t\t\t☆ 3返回主菜单 ☆"<<endl
<<"\t\t\t◆◆◆◆◆◆◆◆◆◆◆◆◆"<<endl;
cin>>Num_Choice3;
switch(Num_Choice3)
{
case 1:
flag=2;
Borrow_Book();
break;
case 2:
flag=2;
Return_Book();
break;
case 3:
mainmenu();
default:
flag=1;
cout<<"输入有误!!"<<endl;
system("pause");
}
system("cls");
}
}
void input_Reader()
{
system("cls");
cout<<"请依照提示输入现有的三位读者的信息:"<<endl;
for(int m=0;m<3;m++)
{
cout<<"姓名:"<<endl;
cin>>reader[m]name;
cout<<"编号:"<<endl;
cin>>reader[m]readernumber;
reader[m]card=0;
}
}
void Borrow_Book()
{
system("cls");
char reader_name[20];
int n,book_number;
cout<<"请输入读者姓名:"<<endl;
cin>>reader_name;
for(n=0;n<3;n++)
{
if(strcmp(reader_name,reader[n]name)==0)
{
if(reader[n]card!=0)
{
cout<<"已借书,不能再借,请按任意键返回"<<endl;
system("pause");
mainmenu();
}
else
break;
}
}
if(n==3)
{
cout<<"无此读者!输入有误!!按任意键返回主菜单"<<endl;
system("pause");
mainmenu();
}
cout<<"请输入所借图书书号:"<<endl;
cin>>book_number;
for(n=0;n<v;n++)
{
if(strcmp(reader_name,reader[n]name)==0)
reader[n]card=book_number;
}
for(n=0;n<v;n++)
{
if(book[n]booknumber==book_number)
{
if(book[n]num_present==0)
{
cout<<"该书已经被借完,请按任意键返回"<<endl;
system("pause");
for(n=0;n<v;n++)
{
if(strcmp(reader_name,reader[n]name)==0)
reader[n]card=0;
}
mainmenu();
}
else
{
book[n]num_present--;
cout<<"借书成功,请按任意键返回"<<endl;
system("pause");
break;
}
}
}
if(n==v)
{
for(n=0;n<v;n++)
{
if(strcmp(reader_name,reader[n]name)==0)
reader[n]card=0;
}
cout<<"所输入的书号不存在,请按任意键返回主菜单"<<endl;
system("pause");
mainmenu();
}
}void Return_Book()
{
system("cls");
int j;
char reader_name[20];
int book_number;
cout<<"请输入读者姓名:"<<endl;
cin>>reader_name;
for(j=0;j<3;j++)
{
if(strcmp(reader_name,reader[j]name)==0)
break;
}
if(j==3)
{
cout<<"无此读者!输入有误!!按任意键返回主菜单"<<endl;
system("pause");
mainmenu();
}
cout<<"请输入所还图书书号:"<<endl;
cin>>book_number;
for(j=0;j<3;j++)
{
if(strcmp(reader_name,reader[j]name)==0)
{
if(book_number==reader[j]card)
{
reader[j]card=0;
for(j=0;j<v;j++)
{
if(book[j]booknumber==book_number)
{
book[j]num_present++;
cout<<"还书成功,请按任意键返回"<<endl;
system("pause");
break;
}
}
}
else
{
cout<<"该读者未借此书"<<endl;
system("pause");
}
}
if(j==v)
cout<<"所输入的书号不存在:"<<endl;
}
}
void Output_Message()
{
system("cls");
int q;
cout<<"以下是图书信息"<<endl<<endl;
for(q=0;q<v;q++)
{
cout<<"书号:"<<book[q]booknumber<<'\t';
cout<<"书名:"<<book[q]name<<'\t';
cout<<"库存量:"<<book[q]num_all<<'\t';
cout<<"现存量:"<<book[q]num_present<<endl;
}
cout<<"以下是读者信息"<<endl<<endl;
for(q=0;q<3;q++)
{
cout<<"姓名:"<<reader[q]name<<'\t'
<<"编号:"<<reader[q]readernumber<<'\t'
<<"所借书号:"<<reader[q]card<<endl;
}
system("pause");
}
void Exit_System()
{
system("cls");
cout<<"欢迎下次使用,谢谢"<<endl;
system("pause");
}
void main()
{
mainmenu();
}
以下是我精心推介的网址,希望对你有帮助。
>
这个简单拉~~!首先你要确定有多少项数据(名称)~~再根据数据分类建几个表~(如书名表,图书库存表,图书借出表,图书归还表等等)~当然借出/归还表要有时间日期等数据~~便于做明细统计~~!建好表~确定好了表与表之间的关系后就可以开始着手建立图书管理系统的窗口~~~ 简单的话~就一个表先建一个窗口~再建一个类似目录的窗口(用几个控键把几个表相互连接起来!) 最简单的做发~~!!嘻嘻~嘻嘻!我读大学时要做的比你的复杂多了~~!!
针对图书馆管理系统的需求,设计如下面所示的数据项和数据结构:
表1:书籍基本信住
包括的数据项有:索书号、图书名称、作者、出版社、出版日期、书价、ISBN、备注信息等。
表2:读者信息基本信息
包括的数据项有:读者编号、学号、姓名、性别、年龄、学院、专业、籍贯、读者类别、最大借阅数、已借阅数、可借阅数、有效日期、读者备注等。
表3:借书基本信息
包括的数据项有:索书号、借书日、应还日、续借次数、读者编号等。
表4:还书基本信息
包括的数据项有:索书号、还书日、逾期天数、逾期罚款、续借日、读者编号等。
表4:管理员基本信息:包括的数据项有:管理ID、管理员帐号、管理密码等。
我建议你再根据你设计的图书馆管理的需求,看下还有没有其它字段要添加上去,那样就更好了。
图书馆管理信息系统 1.引言11 编写目的编写本文档的目的是根据数据库系统分析分析与设计人员和客户(图书读者)沟通的结果,对用户需求进行了全面细致的分析,深入描述《图书管理系统》的功能和性能与界面,确定该系统设计的限制和定义时的其他有效性需求。该数据库综合设计作业规格说明书的读者对象是45042LWM数据库系统设计和实现小组各个成员,主要包括系统的设计与文档编辑人员,数据库实现人员和系统测试人员,版权归45042LWM数据库系统设计与开发小组所有,严禁外传。12 项目背景随着社会信息量的与日俱增,作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理自己的书籍。在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,为了便于图书资料的管理需要有效的图书管理系统与软件,为此45042LWM数据库系统设计与开发小组通过组员之间的沟通与协调,结合所学数据库知识和相关教材,实现了《图书管理系统》的功能和性能。图书管理系统LMSV10是一套功能比较完善的数据管理软件,具有数据 *** 作方便高效迅速等优点。该系统软件采用功能强大的数据库软件开发工具进行开发,具有很好的可移植性,可在应用范围较广的DOS、WINDOWS系列等 *** 作系统上使用。除此以外,LMSV10可通过访问权限控制以及数据备份功能,确保数据的安全性。13 定义文档中采用的专门术语的定义及缩略词简要如下:LMS:Library Management System,图书管理系统;该系统:亦指Library Management System,图书管理系统;45042LWM:是图书管理数据库系统设计与开发小组组名。14 参考资料[1]郑人杰,殷人昆,陶永雷。《实用软件工程》(第二版)。北京:清华大学出版社,1997。[2]王珊,萨师瑄。《数据库系统概论》。高等教育出版社,2006年。[3]张立洪,郑利强等。《轻松掌握SQL》。电子工业出版社,2000年。[4]黄明,梁旭。《Visual Basic信息系统设计与开发实例》。机械工业出版社,2005年3月。[5]刘涛等。《Visual Basic数据库开发系统实例导航》。人民邮电出版社,2005年1月。2.任务概述21 目标《图书管理系统》针对的用户是单个中小型图书室或者个人,藏书的种类和数量较少,读者的数量和来源受到一定的限制。相应的需求有:1.能够存储一定数量的图书信息,并方便有效的进行相应的书籍数据 *** 作和管理,这主要包括: 1) 图书信息的录入、删除及修改。 2) 图书信息的多关键字检索查询。 3) 图书的出借、返还和资料统计。2.能够对一定数量的读者进行相应的信息存储与管理,这其中包括: 1) 读者信息的登记、删除及修改。 2) 读者资料的统计与查询。3.能够对需要的统计结果提供列表显示输出。4.能够提供一定的安全机制,提供数据信息授权访问,防止随意删改,同时提供信息备份的服务。22 运行环境Intel系列或者AMD 2500 以上系列等PC台式机或者便携式电脑等;运行时占用内存:≤5MB;所需硬盘空间:≤20MB; *** 作系统平台:中文Windows2000/XP或更高版本;数据库开发与实现工具:SQLServer2000个人版。23 条件与限制我们认为,一个更为完善的图书管理系统,应提供更为便捷与强大的信息查询功能,如相应的网络 *** 作及服务,由于开发时间和所掌握的知识技能有限,该系统并未提供这一功能。对信息的保护手段仅限于设置用户级别,以及提供数据文件的备份,比较简单,不能防止恶意的破坏,安全性能有待进一步完善。安全性这也是今后开发数据库系统一个不容忽视的问题。3.数据描述31 静态数据图书管理系统的静态数据包括:图书书籍信息: 书籍编号;书籍名称;书籍作者;出版社名称;出版日期;书籍页码;图书分类;图书状态; 读者: 读者编号;读者姓名;读者性别;种类编号;读者工作单位;读者电话号码;读者电子邮件地址;登记日期;读者密码; 借阅信息: 借阅编号;读者编号;读者姓名;书籍编号;书籍名称;出借日期;还书日期; 用户: 用户名;用户密码; 用户类型(权限级别);读者种类信息:种类编号;种类名称;借书期限;有效期限; 书籍类别信息:类别编号;类别名称;关键词;32 动态数据输入数据: 查询方式、查询关键字; 新建图书项、读者项; 图书项、读者项相应纪录更改; 备份数据恢复所需的数据备份文件; 借阅、返还的图书序号、读者借阅证号; 受限 *** 作所需的密码;输出数据: 查询关键字确定的数据库记录的子集; 统计结果; 信息录入、删改结果(成功或失败); 图书借阅、返还 *** 作结果并且可以显示出是否归还; 数据备份输出的数据备份文件;内部数据: 查询 *** 作建立的索引;33 数据库描述数据库采用MicrosoftSQLServer2000数据库。数据库系统名称为45042LWM图书管理数据库系统。4.用户需求分析需求分析的重点是调查、收集与分析用户在数据管理中的信息要求、处理要求、安全性与完整性要求。41 抽取用户语义本系统着重从用户角度入手,主要涉及图书信息、系统用户信息、读者信息、图书借阅等多种数据管理。不同的用户享有不同的服务,而且是不同的角色。从系统管理的角度可将图书分为三类:图书信息管理、系统用户管理、读者数据管理。图书信息管理包括图书借还、查询等 *** 作,系统用户管理包括系统用户类别和用户数据管理,读者数据管理包括读者类别管理和个人数据的录入、修改和删除。作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理自己的书籍。我们主要从不同用户需求分析入手,分析设计结合参考资料而得出图书管理系统主要应具有以下功能:图书借阅者的需求是查询图书室所存的图书;图书馆工作人员对图书借阅者的借阅及还书要求进行 *** 作,形成借书或还书报表给借阅者查看确认;图书馆管理人员的功能最为复杂,包括对工作人员、图书借阅者、图书进行管理和维护,及系统状态的查看、维护等。图书借阅者可直接查看图书馆图书情况,如果图书借阅者根据本人借书证号和密码登录系统,还可以进行本人借书情况的查询和维护部分个人信息。一般情况下,图书借阅者只应该查询和维护本人的借书情况和个人信息。图书馆工作人员有修改图书借阅者借书和还书记录的权限。图书馆管理人员,数据安全性和保密性要求最高。45042LWM数据库系统设计与开发小组设计的图书馆管理员可以浏览、查询、添加、删除、修改、统计图书的基本信息;浏览、查询、统计、添加、删除和修改图书借阅者的基本信息,赋予其最高权限,管理员在删除某条图书借阅者基本信息记录时,应实现对该图书借阅者借阅记录的级联删除。同时对不同的读者来说,不但可以浏览图书,而且他们有各自不同的借书期限,这就是所谓的资深读者和普通读者的区别吧。 42 数据流图和数据字典图书管理系统的总体功能如下:(1) 图书的出借;(2) 图书的返回;(3) 图书信息查询;(4) 图书的增加与删除;(5) 图书管理员(系统管理员)查询统计图书和读者信息;(6) 图书管理系统数据备份;(7) 图书管理系统数据恢复;(8) 图书管理员口令修改等功能; 421 读者借书过程:(1)数据流图:A.图书信息;B.读者信息;C.图书访问记录;D.日期;(2)数据词典:A数据源点描述:a 名称:读者简要描述:借书、还书、查询及登记注册有关数据流:所借书本数目:b 名称:日期简要描述:当日日期有关数据流:年月日数目: B 数据流名词条描述:a.数据流名:读者ID说明:用以携带读者的唯一识别标识数据流来源:读者数据流去向:借书检验每个数据量流通量: b.数据流名:图书说明:记录图书的主要相关信息数据流来源:读者数据流去向:借书检验c.数据流名:借书信息说明:用于传递读者号和图书号数据流来源:借书检验数据流去向:借书登记d.数据流名:日期说明:提供当前日期信息数据流来源:日历数据流去向:借书检验,借书登记e.数据流名:读者信息说明:用于记录登记入库的读者信息数据流来源:读者库数据流去向:借书检验f.数据流名:图书信息说明:用于记录登记入库的图书信息数据流来源:图书库数据流去向:借书检验C.数据文件词条描述:a.数据文件名:读者信息表简述:存放读者信息输入数据:输出数据:读者信息数据文件组成:读者信息表由“读者信息”组成存储方式:关键码b.数据文件名:图书信息表简述:存放图书信息输入数据:输出数据:图书信息数据文件组成:图书信息表由“图书信息”组成存储方式:关键码 422 读者还书过程: 和上述341 读者借书过程相类似,有所不同的就是一个是读者借书,而这个是还书过程,数据词典不再赘述,数据流图如下: 图书读者 还书检验 还书登记检验错误还书信息图书访问记录 日历还书返回信息
423 读者查询书籍过程:(1)数据流图: D读者 查询许可检验数据查询图书访问记录读者库图书库检验错误 用户信息)查询信息日历A查询结果CB
A.图书信息;B.读者信息;C.图书访问记录;D.日期;
以上就是关于急求c++实现MySQL数据库图书管理系统报告,只有源代码也可以,万分感谢全部的内容,包括:急求c++实现MySQL数据库图书管理系统报告,只有源代码也可以,万分感谢、图书管理系统数据库设计、ACCESS做的图书馆数据库管理系统等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)