您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > c++图书管理系统课程设计
湖南科技大学图书馆信息管理系统学生院系:数学与计算科学学院学生班级:12级信计3班学生学号:xxxxxxxx学生姓名:xxxxx指导教师:李建湘老师制作日期:13年12月09日第1页目录一、前言........................................................2二、需求分析....................................................2三、模块功能简介................................................3四、各模块的设计思想............................................4五、详细设计....................................................51、登陆界面的实现...........................................52、信息登记的实现...........................................83、信息的输出实现...........................................124、信息查询的实现...........................................175、信息清除的实现...........................................246、退出系统的实现...........................................247、图片背景的添加...........................................25六、测试分析...................................................27七、心得体会...................................................27致谢...........................................................28参考文献.......................................................28附录(主要源程序的头文件).......................................29第2页湖南科技大学图书馆信息管理系统(湖南科技大学中国湘潭1207020330)摘要本次课程设计任务是通过编写一个图书馆信息管理系统,学习用VisualC++6.0开发简单的管理系统。采用VisualC++6.0软件为主要开发工具。本系统主要完成对图书馆借阅情况和图书馆书籍归还情况的管理,包括借阅信息的登记、查询、界面的清除以及归还信息的登记、查询、界面的清除等。系统还可以完成对图书资料读者资料的浏览等功能。由于我们还没有学习数据库,所以在有关大量借阅信息存储时,此系统显得心有余而力不足。系统的核心是引用I/O流和文本处理来存储和调用图书馆的借阅归还信息,每一个动作都可能影响到其它的功能,还有数据的改变,当完成对数据的操作时系统会自动地完成数据库的修改。关键字:VC++6.0;图书馆信息管理系统;模块化设计;i/O流;一、前言使用计算机管理图书馆信息,不但可以大量节省时间、人力、财力、物力,而且能更全面有效地掌握图书馆的基本情况,及时获取最新而又准确的资料和信息。此课程设计就是这样一个管理图书馆借阅归还信息的系统,其功能与实现方面有比较好的针对性和实用性。软件是在Visualc++平台上开发的,采用i/o流文本存储数据和信息,作为虚拟的数据库。利用i/o流文本操作语言,能比较方便地实现对借阅归还信息的操作与管理。二、需求分析VisualC++6.0的MFC提供了大量的类库函数强大支持。开发一个图书馆信息管理系统,可以实现借阅归还信息的管理。并提供新信息录入,现有借阅查询归还查询功能,对记录的输出等工作。图书馆管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据信息的建立和保存以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。第3页三、模块功能简介第一次做这种比较大型的软件,不足之处在所难免,但以后一定会不断改进,以下为系统主要功能流程,如图(0)所示。图(0)图(0)运行系统输入用户名和密码图书馆信息管理系统登记查询清除退出归还登记借阅查询归还查询清除界面确定退出借阅登记信息归还信息借阅信息第4页四、各模块的设计思想整个系统,采用文件存储信息,采用fwrite()余fread()函数实现信息的整块写入与读出;编写xieruN()与duquN()函数用来记录信息的个数和读出信息的个数方便几个模块的实现模块模块的设计简介登陆系统界面输入用户名和密码,采用if语句判断,正确进入系统,错误则提示错误信息并重新输入密码,3次错误系统自动退出。读者借阅登记调用一个对话框输入借阅信息,并调用FileException类用以实现信息的储存。读者归还登记调用一个对话框输入归还信息,并调用FileException类用以实现信息的储存。读者借阅信息创建一个文件流对象,从文件读入借阅信息,将借阅信息输出,最后关闭文件。读者归还信息创建一个文件流对象,从文件读入归还信息,将归还信息输出,最后关闭文件。读者借阅查询调用一个对话框输入学号,利用查询函数搜索储存文本的每一行,并比较所输入的学号与每一行“,”前的内容是否一致,若一致,则选择输出。读者归还查询调用一个对话框输入学号,利用查询函数搜索储存文本的每一行,并比较所输入的学号与每一行“,”第5页前的内容是否一致,若一致,则选择输出。清除界面调用函数Invalidate()刷新主界面已达到清除界面的作用退出系统调出退出系统对话框理论支撑:C、C++程序设计语言、VC6.0软件五、详细设计1、登陆界面的实现运行系统就有个用户名和密码输入窗口要求输入用户名和密码,相当于系统的门户正确输入才能进入系统,有三次输入机会。打开软件就弹出如图(1)的窗口要求输入密码和用户名。初始用户名为zcx初始密码为zcx(赵彩霞的首字母小写)。图(1)用户名和密码正确则进入系统,弹出消息盒子如图(2)窗口。第6页图(2)密码错误则弹出如图(3)对话框,要求重新输入,点击确定进行再次的输入。图(3)连续输入错误三次,系统则弹出如图(4)对话框自动退出图(4)第7页点击确定退出系统。如登录成功则进入系统如图(5)。图(5)登录界面的类为CHNKJDXTSG,具体实现为:在12信计0330赵彩霞View.cpp中调用CHNKJDXTSG。在12信计0330赵彩霞View.cpp中添加头文件#includeHNKJDXTSG.h、#includeTC.h、#includeZDTC.h、然后在CMy120330View::CMy120330View()中实现相关代码实现如下:CMy120330View::CMy120330View(){//TODO:addconstructioncodehereCHNKJDXBTSGa;for(inti=1;i4;i++){if(a.DoModal()==IDCANCEL)//按退出键询问“是否确定退出系统!”{MessageBox(确定退出);第8页exit(0);}else{if(a.m_str_Srmima==zcx&&a.m_str_Yonghuming==zcx){MessageBox(欢迎进入图书馆管理系统);break;}else//若错误,请求重新输入{MessageBox(重新输入);if(i==3)//输入三次错误系统自动退出{CZDTCd;d.DoModal();exit(1);}}}}}2、信息登记的实现a)读者借阅登记打开系统的登记处理下滑菜单,点击借阅登记弹出如图(6)对话框。完成相关内容输入后,点击确定。第9页图(6)借阅登记对话框的类为CJYDJ,对应的函数中的类名也为CJYDJ,具体实现为:在12信计0330赵彩霞View.cpp中调用CJYDJ。在12信计0330赵彩霞View.cpp中添加头文件#includeJYDJ.h,然后在CMy120330View::OnMenuitemJydj()中实现。相关代码实现如下://///////////////////////////////////////////////////////////////////////////借阅登记类voidCMy120330View::OnMenuitemJydj(){//TODO:Addyourcommandhandlercodehereboolflag=1;while(flag==1){CJYDJs;//用CJYDJ这个类创建一个对象sintg=s.DoModal();fstreamofile;//创建一个输出文件流对象ofile.open(借阅登记.txt,ios_base::app|ios::out);if(g==IDOK){stringap;ap=s.m_str_Xingming;stringad;第10页ad=s.m_str_Sjbianhao;stringab;ab=s.m_str_Shuming;stringac;ac=s.m_str_Xuehao;ofileac,书籍编号:ad姓名:ap书名:abendl;ofile.close();MessageBox(信息存储完毕!);break;}elseflag=0;}}b)读者归还登记打开系统的登记处理下滑菜单,点击归还登记弹出如图(7)对话框。进行相关信息的输入后,点击确定。图(7)归还登记对话框的类为CGHDJ,对应的函数中的类名为CGHDJ,具体实现为:在12信计0330赵彩霞View.cpp中调用CGHDJ。在12信计0330赵彩霞View.cpp中添加头文件#includeGHDJ.h,然后在第11页CMy120330View::OnMenuitemGhdj()中实现。相关代码实现如下://///////////////////////////////////////////////////////////////////////////归还登记类voidCMy120330View::OnMenuitemGhdj(){//TODO:Addyourcommandhandlercodehereboolflag=1;while(flag==1){CGHDJs;intg=s.DoModal();fstreamofile;//创建一个输出文件流对象ofile.open(归还登记.txt,ios_base::app|ios::out);if(g==IDOK){stringap;ap=s.m_str_Xingming;stringad;ad=s.m_str_Sjbianhao;stringab;第12页ab=s.m_str_Shuming;stringac;ac=s.m_str_Xuehao;ofileac,书籍编号:ad姓名:ap书名:abendl;ofile.close();MessageBox(信息存储完毕!);break;}elseflag=0;}}3、信息的输出实现a)读者借阅信息输出打开系统的信息处理下滑菜单,点击借阅信息弹出如图(8)对话框。第13页图(8)借阅信息输出的类为CJYXXCX,具体实现为:在12信计0330赵彩霞View.cpp中调用CJYXXCX。在12信计0330赵彩霞View.cpp中添加头文件#includeJYXXCX.h,然后在CMy120330View::OnMenuitemJyxx()中实现。相关代码实现如下://////////
本文标题:c++图书管理系统课程设计
链接地址:https://www.777doc.com/doc-4948295 .html