图书馆管理系统new

上传人:xins****2008 文档编号:110992035 上传时间:2019-11-01 格式:DOC 页数:18 大小:129.50KB
返回 下载 相关 举报
图书馆管理系统new_第1页
第1页 / 共18页
图书馆管理系统new_第2页
第2页 / 共18页
图书馆管理系统new_第3页
第3页 / 共18页
图书馆管理系统new_第4页
第4页 / 共18页
图书馆管理系统new_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《图书馆管理系统new》由会员分享,可在线阅读,更多相关《图书馆管理系统new(18页珍藏版)》请在金锄头文库上搜索。

1、高级语言程序设计课程设计报告设计题目:图书馆信息管理系统 姓 名:专 业:软件工程班 级: 联系方式:指导老师: 2009年6月8日目录一、课程设计题目及目标3二、设计思想(示意图)4三、程序特点及功能5四、类 、对象及各成员函数设计原理及功能简介6五、图书馆管理系统程序源代码9六、调试记录9七、感想及总结13八、致谢16九、参考资料16一、课程设计题目及目标题目为:图书馆信息管理系统设计目标为:通过此次课程设计,对所学知识加以巩固,会灵活运用训练大家的编程素质,养成耐心细致的习惯。 锻炼思维能力,养成多思考的习惯,同时有助于培养团队意识 了解大型程序的编写过程,为以后编写大型程序和开发软件打

2、下基础。1. 掌握面相对象程序设计的功能抽象和数据抽象方法,掌握类,对象的使用的方法;2. 掌握数据类型的使及不同程序方式的应用.3. 掌握函数使用技巧,包括函数类型的选择,含参数的传递方式等;4. 掌握使用数组,指针,引用,文件等编程的方法.5. 掌握C+流类库的使用.6. 掌握C+模板的使用;7. 掌握中小型规模程序的设计,开发,调试的全过程.二、设计思想(示意图)case 6:m-inquire()图书借阅归还情况查询case 2:m-old_out()旧书删除case3:m-inquire_about_book() 图书查询int menu()主菜单返回用户选择18case 4:m-b

3、orrow()图书借阅(先查询后借阅)case 5:m-back()图书归还main()主函数switch(menu()case18book *mcase 1:m-new_in()新 case 1:m-new_in()新书录入新书录入 录入case 7:m-information_in()管理员及读者信息录入case 8:m-exit()退出图书管理系统三、程序特点及功能 包括图书查询、借阅、归还、及新书录入、旧书删除、借阅归还情况查询及读者信息录入、管理员信息录入的功能 查询图书有按编号,按书名,按书分类,和在库图书查询。图书借阅后就标记为已借阅,可通过查询菜单查询。新书录入前要先输入工作证

4、姓名和编号,与文件library.dat保存的管理员信息对照。若符合,则可进入,否则不可。每次录入新书自动以二进制方式保存在文件book.dat中。借出归还图书记录以二进制方式保存在文件borrow.dat中,可通过借阅归还图书查询菜单查询。借阅图书的读者需输入图书卡姓名和编号,与文件reader.dat保存的读者信息对照。若符合,则可进入,否则不可。读者信息和管理员信息可通过信息录入菜单录入,进入该菜单需输入口令(zhimakaimen)。录入信息分别以二进制方式保存在文件reader.dat和library.dat中。四、类 、对象及各成员函数设计原理及功能简介(4个文件:book.dat

5、储存馆藏图书borrow.dat储存学生借阅归还图书信息library.dat储存管理员工作证信息(已存管理员zhengfengjuan,工作证编号:0901)reader.dat储存读者信息(已存图书卡姓名zhengfengjuan,编号001)首先建立了一个工程。工程包括一个命名空间managemanage包括四个结构:time jie reader tushu 一个类:bookreader:包括char型成员变量:name1、hao(分别存储读者图书卡姓名及编号)tushu:包括char型成员变量:name2、bian_hao(分别存储图书书名及编号),int型bow(存储图书出借情况:

6、若借出则为1,否则为0。默认为0)time:包括三个int型成员变量:year month day 用于存储借阅、归还图书时间Jie:包括成员变量char型reader_name20、reader_hao10、book_hao10(分别存储借阅学生姓名、图书卡号、所借图书编号), time结构型time1、time2 (分别存储借书时间、还书时间)book:包括一个默认构造函数book(),七个成员函数,成员变量:int型指针menu_select(void),结构tushu型T200,M200,jie型jieyue50,reader型R20 包括一个主菜单,一个主函数,和一个指向各成员函数的

7、指针。主菜单用于显示该图书管理系统功能及各个子菜单请输入用户选择,返回1到8之间的数字在主函数中,通过switch语句,根据用户选择来由指针完成对各个成员函数的调用包括七个成员函数1、void new_in( )新进图书录入 该菜单设置访问权限:只有管理员可访问,因此进入菜单前要先输入管理员工作证姓名及编号,并与文件library.dat中信息对照,若输入正确,方可进入。 管理员输入图书书名及编号,存入数组T200中,并将T.bowl值设为0(图书未借出) 将输入图书信息以二进制方式写入文件book.dat文件中。 若管理员工作证编号输入错误,则输出提示信息。 之后询问是否继续录入新书,若是,

8、则允许再次输入。若否,则返回主菜单 2、void olda_out( )旧书删除 该菜单设置访问权限:只有管理员可访问,因此进入菜单前要先输入管理员工作证姓名及编号,并与文件library.dat中信息对照,若输入正确,方可进入。 管理员输入要删除图书书名及编号,然后以二进制方式打开文件book.dat,读出文件信息,若与管理员输入图书信息不相同,则将该图书信息写入数组M200中。否则不写之后再将数组M200以二进制方式写入文件book.dat中最后询问是否继续删除旧书,若是,则允许再次输入。若否,则返回主菜单3、void inquire_about_book( )图书查询(包括按书名查询,按

9、书编号查询,分类显示,在库图书显示退出查询菜单)该菜单所有人均可访问。首先请用户做出选择:输入数字14再用switch语句列出各个选择:该菜单设置一个do while循环,允许多次输入首先请用户输入查询的图书书名,在以二进制方式打开文件book.dat,以二进制方式读出文件中信息,并将其存入数组T中,若输入图书书名与文件中图书信息符合,则输出提示信息:您要找的图书馆藏有,并检验Ti.bow值,若为0,则输出,且尚未被借走,并输出该书编号,提示用户到指定位置查询,若为1,则提示用户:该书已被借走。若输入图书book.dat中无相符信息,则提示用户:您要找的图书馆藏无之后询问是否继续按书名查询,若

10、否,则返回查询菜单按编号查询原理同按书名查询,只是输入为图书编号之后询问是否继续按编号查询,若是,则继续。若否,则返回查询菜单该菜单设置一个do while循环,允许多次输入首先列出图书各个分类请用户做出选择然后以二进制方式打开文件book.dat,读出图书信息并将其存入数组T中,若T中数组编号首字母与用户输入选择相同 则输出该图书书名及编号,即将该类图书全部列出之后询问是否继续按书分类查询,若是,则继续。若否,则返回查询菜单该菜单设置一个do while循环,允许多次输入以二进制方式打开文件book.dat,读出图书信息并将其存入数组T中,然后在屏幕上输出图书信息:编号及书名 退出该查询菜单

11、4、void borrow( )图书借阅该菜单所有人均可访问。 首先请用户输入图书卡姓名及编号,然后以二进制方式打开reader.dat文件,若输入图书卡编号与在文件中有相符信息,可开始借阅,否则输出提示信息:图书卡姓名或编号输入有误若输入正确,则先提示用户输入想借的图书类别,并在屏幕显示该类别图书,再请用户输入所借图书编号,以二进制方式打开文件book.dat,将符合条件图书T.bow标记为1(已借出) 然后输入借阅时间,若正确,则将该学生借阅信息存入数组jieyue50,并以二进制方式写入文件borrow.dat,提示用户:借书成功。否则提示用户:借书时间输入有误之后询问是否继续借书,若是

12、,则继续。若否,则返回主菜单5、void return( )图书归还该菜单所有人均可访问。 首先请用户输入图书卡姓名及编号,然后以二进制方式打开reader.dat文件,若输入图书卡编号与在文件中有相符信息,可开始归还,否则输出提示信息:图书卡姓名或编号输入有误 若输入正确,则请用户输入要归还图书编号,以二进制方式打开文件book.dat,将该图书标记为未出借,然后请用户输入还书时间,并以二进制方式打开文件borrow.dat文件,若还书时间输入正确,将其赋给数组jieyue.time2则将该学生还书信息以二进制方式写入文件borrow.dat,提示用户:还书成功。否则提示用户:还书时间输入有

13、误 之后询问是否继续还书,若是,则继续。若否,则返回主菜单6、void inquire( )读者借阅与归还图书情况查询该菜单设置一个do while循环,允许多次输入该菜单所有人均可访问。请用户输入图书卡姓名及编号,然后以二进制方式打开borrow.dat文件,将该学生借阅与归还图书信息输出到屏幕之后询问是否继续查询,若是,则继续。若否,则返回主菜单7、void information_in( )读者信息录入 该菜单设置一个do while循环,允许多次输入。 该菜单设置访问权限:只有管理员和管理员信息录入人员可访问 进入该菜单需输入口令(zhimakaimen)输入正确方可进入,否则输出提示

14、信息:口令输入有误,您无权进入该菜单若输入正确,则选择操作:1管理员信息录入2读者信息录入。1管理员信息录入人员输入管理员工作证姓名及编号将其存入数组L30,并将其以二进制方式写入文件library.dat中2管理员输入学生图书卡姓名及编号,将其存入数组R20,并将其以二进制方式写入文件reader.dat中 之后询问是否继续录入,若是,则继续。若否,则返回主菜单8、exit( )退出图书馆管理系统 的选择每个成员函数调用之前有一个system语句对屏幕颜色及字体颜色进行设置(即每个字菜单背景与字体颜色不同)每个子菜单结束后都自动返回主菜单 五、图书馆管理系统程序源代码/该程序用于演示图书馆管理系统 /完成时间:2009/05/17 /制作人:郑凤娟/E-mail: 六、调试记录1、开始时,不太懂构造函数,析构函数的用法,照书生搬硬套。一般情况,类中可以不用析构函数2、建立链表时,注意每次最好清空,否则可能出现占用内存的情况,能用数组最好不用链表3、while循环初始值一定要归0,for循环要注意循环变量一致4、以二进制方式打开文件,注意读和写要分开进行,分别声明if

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号