您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > 图书管理系统的设计我的
学年论文(课程论文、课程设计)题目:图书管理系统作者:依米提江.牙森所在学院:信息科学与工程学院专业年级:计算机13-3指导教师:张文东职称:讲师2014年12月25日图书管理系统的设计1概述1.1课程设计目的1.巩固并加深学生对C++语言程序设计知识的理解;2.培养学生面向对象的程序设计思想,使学生认识面向过程和两种设计方法的区别;3.进一步掌握和运用VC++6.0集成开发环境;4.提高运用C++语言解决实际问题的能5.初步掌握开发小型使用软件的基本方法,能独立设计并实现基本的MIS系统;6.掌握书写程序设计开发文档的能力(书写并完成课程设计实验报告)。1.2课程设计内容1.)图书添加管理:录入新的图书信息;2.)图书借还管理:实现对图书的借出和归还的管理;3.)图书查询管理:通过各种方式可以来进行查阅。2系统需求分析2.1系统目标实现简单图书信息的管理。2.2主体功能1.)图书入库管理:录入新的图书信息;2.)图书借还管理:实现对图书的借出和归还的管理;3.)图书查询管理:通过各种方式可以来进行查阅。4.)图书删除管理:实现对图书的删除。5.)借书人的信息查询:实现对借书人的查询。2.3开发环境基于微软的VisualC++6.0环境,设计一个小型的信息管理系统。3.程序的流程图图书管理系统程序的实现功能删除旧书查找书目借书添加新书还书查询借书人系统详细设计4.1图书添加管理模块设计voidgroup::add()//添加图书的函数4.2图书借书管理模块设计voidgroup::get()//关于借书的函数4.3图书还书管理模块设计voidgroup::back()//还书操作的函数4.4图书查询管理模块设计voidgroup::find()//查找图书操作的函数4.5图书删除管理模块设计voidgroup::del()//删除图书的函数4.6查询借书人的信息voidgroup::inquire()//查询借书人的设置操作{charn[15];cout请输入书目登录号:endl;cinn;cout借走的人是:a-readerendl;//指向book类借走的人(读者)return;}我所负责的代码:通过友元类group来调用book类里面的add()函数,并且if条件语句进行判断最开始的图书总数量是否为零,再通过for循环,使图书的数量增加,这部分多数是用ifelse判断句来实现的。通过友元类group来调用book类里面的del()函数,先是输入登录号,并通过if(!strcmp(a[i].id,n))查找登录号与已保存的书的编号是否相同,如果相同就执行下面的语句,并且显示删除图书的相关信息。通过友元类group来调用book类里面的find()函数,并通过if(!strcmp(a[i].id,n))来判断以保存的登录号是否与所输入的相同。voidgroup::add()//添加图书设置操作(){if(book::n!=0){for(inti=book::n-1;ilen;i++){a[i+1].book::setbook();cout还要继续添加吗?确定(y)/取消(n):;charc;cinc;if(c=='y')continue;elseif(c=='n'){cout退出添加!endl;return;}else{cout选择错误,默认退出添加!endl;return;}}}else{for(inti=0;ilen;i++){a[i].book::setbook();cout还要继续添加吗?确定(y)/取消(n):;charc;cinc;if(c=='y')continue;elseif(c=='n'){cout退出添加!endl;return;}else{cout选择错误,默认退出添加!endl;return;}}}}voidgroup::del()//删除图书设置操作(){inti,j;charc;charn[15];cout请输入登录号:endl;cinn;for(i=0;ibook::n;i++)if(!strcmp(a[i].id,n)){j=i;cout将要删除该书目:endl;cout作者:setw(8)书目:setw(15)书目编号:setw(12)库存册数:setw(12)已借出数:setw(12)借走的人:setw(12)登录号:endl;a[j].book::outcom();cout确定要删除吗?确定(y)/取消(n);cinc;if(c=='y'){for(i=j;ibook::n-1;i++)a[i]=a[i+1];cout已删除该书目信息:endl;book::n--;return;}}elseif(c=='y'||c=='Y'){cout取消删除!endl;return;}cout你要删除的书不存在!endl;return;}voidgroup::find()//查找图书设置操作{charn[15];inti,j;cout请输入登录号:endl;cinn;for(i=0;ibook::n;i++)if(!strcmp(a[i].id,n)){j=i;cout你要查找的书信息:endl;cout作者:setw(8)书目:setw(15)书目编号:setw(12)库存册数:setw(12)已借出数:setw(12)借走的人:setw(12)登录号:endl;a[j].book::outcom();return;}else{cout输入错误!endl;break;}}5测试5.1测试方案1.运行程序;2.进行图书入库操作;3.若存数不够,进行图书追加入库操作;4.进行借书操作;5.进行还书操作;6.在借书和还书的同时,进行图书查阅操作;7.操作结束,退出系统。5.2测试结果(1).图书管理系统主界面(2)添加图书功能界面(3)删除图书功能界面(4)查找图书功能界面(5)借书的功能界面(6)还书的功能界面(7)查询借书人的功能界面以上就是程序运行时所有功能的界面展示。6.小结通过这次的课程设计,让我们的感觉到了要自己设计一个程序是多么的难,以及学习好c++是多么的重要。这个程序的设计过程中,我清楚的意识到自己的水平有多么的薄弱,课程的知识学得有多么的不扎实。看网上的例子好像觉得也没那么难,自己一上机实际操作就出现了很多问题,调试的时候系统总是在报错,还有很多警告,每增加一个函数就要调试好久,有时候应为少了一个大括号或是分号,导致要找很久很久。虽然系统可以运行,也具有了一些基本的功能,但我们意识到了自己有太多的不足。以后还会有很多的课程设计,一定要吸取这次的教训,把知识学懂学透学精,真正的为我们所用,这样走上社会我们才能真正的发挥所长。设计心得经过这几周的努力,我们的图书管理系统终于如期完成了。通过这次程序设计,我又了解以及掌握到了很多的知识,现在对一个具体的功能模块有了全方面的认识,脑海中有了一个整体框架的概念。本次程序设计感触很深,其一,就是有了一个利用本专业所学到的知识来练习,实践的机会。以前我也学了C语言编程语言,但那时我做的仅是用一些零零碎碎的知识,简简单单的语句来解决一些小问题而已。此次做图书管理系统却给了我一个机会,一个需要将所学到的有关c++知识及管理信息系统编程两方面的所有的知识结合起来。其二,就是增强了自己的自信心。以前老是认为自己做不到,完全没有信心,本次做程序设计我虽然只是协助我的组员,但是我也有自己的构思和想法,帮组我的组员更好的完成本次图书管理系统的设计。我们的系统规模比较小,同时由于我们的时间和能力等多方面的因素影响,我们的系统也存在一定的缺陷。比如系统的有些功能没有考虑到,有的功能不够完善等,有了此次实践,以后遇到同样的问题就能够做的更好。通过这次程序设计让我逐步学会了如何运用C++面向对象程序设计的设计思想和方法来解决实际问题。比如这次设计图书管理系统,首先我考虑是在实际应用时用户一般进行什么操作,对哪些对象进行操作。很显然我需要建立两个类,包括图书类和读者类,同时考虑到图书和读者不止一个,所以还需两个类,图书库类和读者库类,这两个类分别将其信息传递给图书类和读者类。确定了类之后,则需要对类的内容进行扩充。由于我需要这个系统完成对图书管理和读者管理的功能,并能对借阅信息进行管理,要求完成一下功能,图书资料管理,可以添加、修改、删除、查询书籍信息,读者资料管理,可以添加、修改、删除、查询读者信息;借书管理,可以进行添加借书信息;还书管理,可以进行还书信息。所以在对应的类下建立相应功能函数。建立功能函数后就是构造主函数。主函数的作用就是通过向对象发送信息、对象接受信息启动相应的方法来实现相应的操作。当然在这些过程中要保证面向对象程序设计的抽象、封装、多态和继承的特点。在设计本系统中虽然综合考虑到了图书管理的各个方面,界面设计简洁,但依然还有一些不足。为了能够较好地完成本次程序设计,我详细阅读教材,以及网上搜索,和到图书馆查找相关资料等。在做程序设计的过程中,我在利用所学的知识同时,又学到了很多实例化的理论知识和软件工程的一些实践,总结了一些经验和方法强化了我的实际动手能力,同时也找到自己的不足,我一定会继续学习增加自己的编程能力和调试能力,在今后的学习中我将会更加的努力,增加自己的知识储备,拓宽自己的知识面,锻炼自己的能力,使我的综合素质得到较大的提高。在这程序设计的过程中我也出现过一些比较严重的错误,后来在同学的指点下我改正了自己的错误,并最终成功调试除了程序。当程序调试出来的那一瞬间,我感觉自己完成了一件非常了不起的事,好有成就感。在以后的日子,我将会继续我的兴趣继续深入学习程序设计,相信在越来越多的尝试之后,自己会不断进步不断提高的。在这次课程设计中,我懂得了程序开发的一些比较重要的步骤,比如需求分析、总体设计、程序模块设计(含功能需求、程序代码设计与分析、运行结果)、系统使用说明等,相信会为各自以后的学习和工作带来很大的好处。最重要的是,让我从一个只懂理论变成了能做一些小型程序,明白了分工合作以及成员之间的相互配合的协调的重要性。整体地评价这次程序设计,我觉得收获很大通过课程设计,既复习了以前的旧知识,又学到了一些新的知识;设计增强了我用所学知识去解决具体问题的能力,进一步培养了我独立思考问题和解决问题的能力。特别是学会了在VisualC++环境中如何调试程序的方法。也在此感谢本次程序设计中辅导老师对我们的关心和帮助,诚心诚意感谢老师对我们的鼓励与教导,还有,在此也十分感谢本次程序设计中同学们对我的帮助,我以后将会更加努力的学习这门课程。总之,本次课程设计是对自己以前所学的知识进行系统的综合、升华,自己受益匪浅。
本文标题:图书管理系统的设计我的
链接地址:https://www.777doc.com/doc-2598177 .html