c语言图书标准管理系统专业课程设计方案报告.doc
《c语言图书标准管理系统专业课程设计方案报告.doc》由会员分享,可在线阅读,更多相关《c语言图书标准管理系统专业课程设计方案报告.doc(36页珍藏版)》请在咨信网上搜索。
1、沈航北方科技学院课程设计说明书 课程名称 c语言课程设计 教 学 部 机械工程系 专 业 数控 班 级 B042111 学 号 B04211123 学生姓名 田文 指导老师 赵小磊 _ 6月链表实现图书信息操作田文目录摘 要11绪论12系统分析12.1 功效需求12.2数据需求22.3 性能需求23总体设计23.1功效模块设计23.2系统设计方案64具体设计74.1登录模块74.2借书管理模块84.3还书管理模块95调试和测试105.1 调试105.2 测试116结论12结束语12参考文件12附录1用户手册(另起一页)13附录2源程序(另起一页)15摘 要经过对程序设计题目标分析可知,整个程序
2、设计实现大致分为五个模块,其中每一个模块对应一个函数,她们功效分别是:图书信息输入函数input(),借阅图书函数(borrow),增加删除图书函数(adddelet),图书查询函数(search),和归还图书信息函数(giveback)。在这些函数当中,这四个函数实现严格根据题目标要求。1、 图书信息输入函数 关键功效是从键盘输入图书信息并将其写入文件中,作为图书馆书库,方便对下面函数进行运行,此函数是基础.2、 图书借阅函数 关键借阅图书功效和录入学生应该还书时间;3、 图书归还函数 关键实现借阅图书后,归还图书功效,并把应该还书时间和实际还书时间进行比较过期时输出学生信息,也是该程序一个
3、关键4、 增加删除图书函数 实现功效是实现对图书删除;5、 图书查询函数 许可根据图书编号,书名,作者,出版社进行查询,并将查询信息输出;6、 退出函数 该函数关键实现退出运行界面功效.除上面介绍功效之外,程序还含有退出功效,能够在程序一次运行当中循环实施全部功效,并依据需要终止程序实施。每一个图书统计全部包含:图书编号,名称,出版社,作者,现有数量和总量在程序当中,将图书统计类型定义为结构体类型,并把它写入d:liuyan.txt中,其它函数每次对图书统计访问,其数据起源全部是d:liuyan.txt文件,这么做不仅能够确保图书数据一致性,而且能够对图书数据进行永久保留,确保每次运行程序全部
4、能够采取原来数据。1绪论整个程序设计实现大致分为五个模块,其中每一个模块对应一个函数,她们功效分别是:图书信息输入函数input(),借阅图书函数(borrow),增加删除图书函数(adddelet),图书查询函数(search),和归还图书信息函数(giveback)。在这些函数当中,这四个函数实现严格根据题目标要求。2系统分析2.1 功效需求设计一个经过链表实现对图书信息进行管理程序,要求完成以下功效:1. 建立一个链表,每个结点应包含以下信息:图书号、书名及出版社、价格、ISBN、作者、册数;2. 将输入信息按图书号进行从小到大排序;3. 实现查询功效输入书名,查询输出相关信息;4. 实
5、现插入功效输入图书信息并插入有序链表中;5. 实现删除功效输入书名或书号,可将其信息从链表中删除;6. 统计链表中图书总价值,并在屏幕上输出;7. 统计该链表中价值超出某一数目标图书总数,并在屏幕上输出。8. 有界面友好易于使用菜单。2.2数据需求需要向系统输入图书号、书名及出版社、价格、ISBN、作者、册数2.3 性能需求在运行本程序时只要根据正确操作方法不会出现无法运行情况,系统稳定性好,安全,可靠。3总体设计3.1功效模块设计依据分析整个系统关键划分为4个功效模块,分别实施要求中功效。该系统需要有添加,删除,查询,修改,累加,循环显示主菜单,保留信息功效,能将会员卡进行注销,利用显示函数
6、将会员卡内全部信息显示。要求有循环显示菜单工能。功效模块图图1所表示。(1)输入读者输入相关读者信息至内存中;(2) 输入书籍输入书籍号,对已存书籍信息进行查询;(3) 书籍管理模块输入对应代码,对相关信息进行查询;(4) 退出管理模块主菜单中输入0退出系统登录;图1图书管理系统步骤图图2 管理员版图书管理系统步骤图图3 图书查询主界面步骤图3.2系统设计方案设计一个总菜单,1登录信息,2查询管理,3书籍管理系统,4退出系统。基础功效实现全部将表现在这多个菜单选项中。struct reader *next;RD;BK *h_book;RD *h_reader;void Login(); /*登
7、陆*/int Menu(); /*主菜单*/void Menu_select(); /*主菜单选择函数*/void Init(); /*初始化*/void Init_reader(); /*初始化读者*/void Init_book(); /*初始化图书*/void Insert_New_Book(); /*新书入库*/int Find(); /*查找菜单*/void Find_Select(); /*查找菜单选择函数*/void Find_Reader(); /*查找读者信息*/void Find_Book(); /*查找图书信息*/ void Print_reader(); /*打印读者信
8、息*/void Print_book(); /*打印图书信息*/void Borrow_Book(); /*借书函数*/void Return_Book(); /*还书函数*/void Save(); /*保留信息*/void Save_Reader(); /*保留读者信息*/void Save_Book(); /*保留图书信息*/ void Load(); /*加载信息*/void Load_Reader(); /*加载读者信息*/void Load_Book(); /*加载图书信息*/void Login()/*登陆*/system(cls);printf(nnnttt欢迎登陆本系统n);
9、printf(nntt 系统版权全部nnnnnnn);printf(nnntt 按 任 意 键 进 入 系 统 .);getchar(); system(cls);int Menu() /*主菜单*/ int sn;printf(ntt图书管理系统主菜单n);printf(=n);printf(*t0-退出系统 *n);printf(*t1-新书入库 *n);printf(*t2- 查询 *n);printf(*t3-借书登记 *n);printf(*t4-还书管理 *n);printf(=n);printf(请选择对应代码:); 4具体设计 4.1登录模块图4:输入读者信息图5:输入书籍信息
10、4.2借书管理模块主菜单中输入读者和书籍信息后,对已存书籍进行借阅,程序步骤图4所表示。图6 借书模块步骤图4.3还书管理模块对于已还书籍进行管理,程序步骤图4所表示。图7 还书模块步骤图5调试和测试5.1 调试调试是软件开发过程中一个关键步骤,也是最复杂,对软件开发者者来说也是最艰巨任务。调试任务是立即更正测试过程中发觉软件错误。具体地说,调试过程由两个步骤组成,它从表示程序中存在错误某迹象开始,首先确定错误正确位置,也就是找出哪个模块或哪个语句引发错误。然后仔细研究推断代码以确定问题原因,并设法更正。调试过程关键是运行编制好程序,然后碰到错误后依据系统提醒,找到相关问题所在。本系统调试过程
11、中碰到问题、原因和处理方法以下面介绍。(1) 程序只能在目前运行时才能实现自动生成书籍信息,而关闭系统再次打开添加新读者又从0开始和之前读者反复,造成借还信息程序管理混乱,无法正确运行。原因:在实施后系统没有统计目前读者信息,因为读者信息自动按1、2、3、4依次递增生成系统;应该统计最终所生成读者信息,在下次运行程序时系统会接着上次统计读者信息自动依次生成。(2) 运行完程序一次有错误提醒原因:上次运行程序后没相关闭操作界面当点击编译时会有一个错误提醒,处理方法:将上一次运行时操作界面关闭。(3)设计过程中想法和程序中不足总来说这个程序大致实现了题目标要求,不过这套程序仍然存在着很多问题和不足
12、。比如,程序中主函数写有点繁琐,有太多嵌套,不是那么井然有序,条理清楚,程序注释也不是很完善,对信息处理功效还有些不足之处,提醒信息不明确。还有就是没能做到模糊查询。这个系统关键是参考书本手机通讯录模版编写,同时也得到了老师和同学部分帮助。我在做系统过程中也碰到了很多问题,有是知识不足,有是考虑不够周全。事实证实,只靠自己知识面还是很窄,独立处理问题能力不是很强,以后还要加强对c语言学习。 我认为对于C语言编写程序来说,使用方法大致全部是一样,所以假如要改善话,就是要改善部分算法,尽可能把界面编写清楚,提醒信息全方面,方便易用。5.2 测试软件测试是软件生存期中一个关键阶段,是软件质量确保关键
13、步骤从用户角度来看,普遍期望经过软件测试暴露软件中隐藏错误和缺点,所以软件测试应该是“为了发觉错误而实施程序过程”。或说,软件测试应该依据软件开发各阶段规格说明和程序内部结构而精心设计一批测试用例(即输入数据及其预期输出结果),并利用这些测试用例去运行程序,以发觉程序错误或缺点。过分测试则会浪费很多宝贵资源。到测试后期,即使找到了错误,然而付出了过高代价。测试数据过程以下。(1) 登陆功效测试输入数据1:读者编号:23,读者姓名:tianwen,书籍编号:01,书名:xyz作者:xxx,数量:10预期结果:数据输入到系统中;运行结果:出现图书管理系统主菜单说明:登陆功效实现(2) 借书功效测试
14、。(3) 还书功效测试。6结论计算机综合训练顺利完成,任务书中所提出要求全部实现,能够对会员信息进行添加、修改、删除和按多种信息查找,可将会员此次消费金额累加到会员卡上,能够自动生成会员卡号而且将多种信息保留到文本文件中。不过这个程序还有些不够完善,比如:在添加新会员时当会员信息全部输入以后系统中全部会员信息自动显示,这么很占用操作界面,使操作不是十分清楚;再一个就是系统无法正确识别身份证号和电话好码只能靠会员卡管理员认真细心才能降低犯错,改善方法:调用一个能够判定号码位数函数,假如输入位数不正当则提出警告重新输入。结束语在这一个星期实践中,经过编写这个图书管理系统,我体会到了c语言学习实用性
15、。将理论和实践结合在一起,用优异计算机工具方便大家生活。C语言程序编写首先要从大局考虑,把自己编写整个程序思想全部写在初稿上,这么有利于自己编写程序,在编写时要完善注释,方便其它人了解程序。编写程序从理论上来说并没有错,但一上机就问题不停。甚至有些书本上知识照搬不变,也不能得到正确结果。有时一个程序改了一遍又一遍,但就是不能成功,编程显得枯燥乏味,看似简单程序题,在调试时却频频犯错。经反复修改后,结果正确了,这时全部乏味全部显得那么无力,一切全部是值得。我认为,开发一套系统,最关键是细心,而且思索要全方面,结合实际,充足考虑到用户需求和现实意义。不管什么系统,只用利用到实际应用中,才含有现实意
16、义。 所以c语言程序实用性很强,我们以后还要愈加努力认真地学习编程语言。参考文件附录1用户手册点击运行,首先出现是菜单界面,选择菜单选项进行操作,可进行图8所表示。系统主界面(选择数字进入,退出系统)图8 菜单界面选择1进入系统,然后出现功效菜单 图9 登陆功效;输入读者和书籍,然后出现功效菜单;图10 图书管理系统主菜单附录2源程序#include #include #include #define Max 3 typedef struct bookchar book_num10;char book_name20;char book_writer10;int book_kc;int book
17、_xy;struct book *next;BK;typedef struct borrowchar borrow_book_num10;char limit_date8;BO;typedef struct readerchar reader_num10;char reader_name10;int right;BO borrowMax;struct reader *next;RD;BK *h_book;RD *h_reader;void Login(); /*登陆*/int Menu(); /*主菜单*/void Menu_select(); /*主菜单选择函数*/void Init();
18、/*初始化*/void Init_reader(); /*初始化读者*/void Init_book(); /*初始化图书*/void Insert_New_Book(); /*新书入库*/int Find(); /*查找菜单*/void Find_Select(); /*查找菜单选择函数*/void Find_Reader(); /*查找读者信息*/void Find_Book(); /*查找图书信息*/ void Print_reader(); /*打印读者信息*/void Print_book(); /*打印图书信息*/void Borrow_Book(); /*借书函数*/void R
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 图书 标准 管理 系统 专业课程 设计方案 报告
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。