

下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、封面作者:PanHongliang仅供个人学习目录(1)实 践 任 务书.,.1(2)总 体 设 计 方案.2(一)设计任务书1.题目:图书管理系统2.程序功能组成:程序为图书管理系统。包括以下功能: 图书增添,修改,删除,统计,查找,清空记录。3.成员组成与分工:(1)成员组成:机械1309侯想 机械1309周易机械1309孙昱分工:_(4)成员设计内容简介.9(5)工程源程序代码.10(6)课程设计心得.191.设计心得体会(侯想).192.设计心得体会(孙昱).203.设计心得体会(周易).21(7)成绩评疋及评语22人员:侯想周易孙昱1.设计分析2.模块设计3.流程图.(3)使例.1.
2、系统首页2.操作主页3.功能模块(1)(2)(3)(4)(5)(6)(7)新增图书更改图书删除图书查找图书统计图书清空全部退出系统说.4.2.3.3明 及445.5.5.6.6.7.7.8分工:1.模块设计2.报告修改1.程序美化 程序调试2.报告设计制 作1.模块设计2.报告修改进度安排:时间:进度安排:实施情况:6月23日自由组队,选择设计工程,明确 分工。按时完成6月24日一26日小组成员进行模块设计,包括编 写、查找代码,运行调试代码。按时完成6月27日一28日进行程序代码的组合,调试。按时完成7月1日一2日进行程序的运行,检查,修改。按时完成7月3日一4日提交,答辩。按时完成(二)总
3、体设计方案1设计分析(1)系统功能:图书管理系统基本功能:增加,更改,查找,删除;全部图书记录的统计与显示; 快捷清空所有图书记录。(2)系统要求:数据成员char nameStrNum。 用来存放书名。char numberStrNum。用来存放图书的编号。char kin dType。用来存放图书的类型。int tag。定义删除标记。int num。定义图书编号为整形。int add。增加标记。函数成员Book()无参构造函数,用于为书名和作者姓名设置默认值。char getk in d()用于获取图书类型。char get name()用于获取书名。in t get num()用于获取图
4、书编号。int gettag()用于获取删除标记void delbook()用于删除图书void addbook(int n,char *na,char *kin,char *au.char *pr) void disp()用于输出图书。(3)系统特点: 操作界面有颜色(背景蓝,字体白); 功能齐全; 系统稳定,无bug。2模块设计共七个模块:(1)新增图书 按编号,书名,类型,作者,出版社信息顺序添加图书;(2)更改图书 按编号查找图书,然后进行信息更改录入;(3)删除图书按编号查找图书,然后进行删除工作;(4)查找图书根据编号查找图书;(5)统计图书 显示系统所以已录入图书信息;(6)清空
5、全部 一次性清空系统记录,慎用(无恢复功能);(7)退出系统3流程图void setname(char na)用于设置书名void setkind(char kin)用于设置类型void setauthor(char au)用于设置作者void setpress(char pr)用于设置出版社用于增加图书(三)使用说明及运行实例1.系统首页注)选择1才正式进入操作图书管理系统,选择0退出系统2.操作主页注)输入数字1-6进入相应操作模块,输入0则退出系统。3.功能模块(1)新增图书注)进入“新增图书”模块后,分别输入图书的编号,类型,书名,作者,出版社,回车结束操作。(2)更改图书注)进入“更
6、改图书”模块后,输入对应需要更改的类容。(3)删除图书注)进入“删除图书”模块后,输入图书编号,键入y确认删除,n取消删除。4)查找图书注)进入“查找图书”模块后,输入图书编号,回车后则显示所查找图书,且 同时显示图书的信息。(5)统计图书 注)进入“统计图书”模块后,即会显示所以系统保存的图书信息(6)清空全部 注)进入“新增图书”模块后,键入y确认清空,n取消清空(7)退出系统注)在功能模块,键入0,即会返回系统首页。若需重新操作,参考前面类容 介绍;若需退出系统,则再键入0,回车,然后任意键退出系统。(四)成员设计内容简介成员设计工作表及简介姓名侯想孙昱周易设计:1.图书增加M.图书删除
7、1.系统修改类容加入图书书名,加入删除指定编修改源代码,美化作者,编号,类号图书信息与记操作界面,添加蓝型,出版社五种录,带有确认提色背景白色字体代信息,录入记示。码。录。2.图书清空2.程序调试2.图书显示加入清空所以图调试程序,查看是加入编号显示图书记录信息,带否存在bug,修复书记录与信息。有确认提示系不合理地方。3.图书统计统。3.报告设计与制作显示所以图书记3.图书更改进行报告结构设计录。加入按编号显示与简单制作,明确4.设计报告修改查找出需修改的设计报告具体内进行报告后期修图书,然后进行容。改。信息修改。(五)工程源程序代码程序源代码:未*#define StrNum 20#def
8、ine Type 20#include #include #include #include /输入/输出文件流类using namespace std。const int Maxb=100。/最多可存储的class Bookrprivate:int tag。/删除标记int num。/图书编号int add。/增加标记/ochar numberStrNumchar nameStrNum。char kindType。char authorStrNumchar pressStrNumpublic:Book() char getkind()/return kindType/编号 书名 图书类型 图
9、书作者出版社获取图书类型char getname()/获取书名return nameStrNumchar getauthor()/获取作者return authorStrNumchar getpress()/获取出版社return pressStrNumint getnum()/获取图书编号return num。int gettag()/获取删除标记return tagBook bookMaxb。/图书记录for (int i=0。i=top。i+)void setname(char na) /设置书名strcpy(name,na)。void setkind(char kin) /设置类型st
10、rcpy(kind,kin)。void setauthor(char au) /设置作者strcpy(author,au)。void setpress(char pr) /设置出版社strcpy(press,pr)。void delbook() /删除图书tag=1。void addbook(int n,char *na,char *kin,char *au,char *pr) /增加图书tag=0。num=n。strcpy(name,na)。strcpy(kind,kin)。strcpy(author,au)。strcpy(press,pr)。void disp() /输出图书cout.fl
11、ags (ios:left)。/设置对齐的标志位为左coutsetw(15)numsetw(15)namesetw(13)kindsetw(10)authorsetw(10)presssetw(10)endl。/*/class BDatabaseprivate:int top。/图书记录指针public:BDatabase() /构造函数,将book.txt读到Book b。top=-1。fstream file(book.txt,ios:in)。while (1)file.read(char *)&b,sizeof(b)。if (!file) break。top+。booktop=b
12、。file.close()。void clear() /全删top=-1。int addbook(int n,char *na,char *kin,char *au,char *pr) /Book *p=query(n)。if(NULL=p)top+。booktop.addbook(n,na,kin,au,pr)。return 1。return 0。Book *query(int bookid)/查找图书for (int i=0。i=top。i+)if (booki.getnum()=bookid &booki.gettag()=0)return &booki。return N
13、ULL。void bookdata()。/图书库void disp()book中增加图Book bookMaxb。/图书记录for (int i=0。i=top。i+)if (booki.gettag()=0)booki.disp()。BDatabase() /析构函数,将book写到book.txt文件中fstreamfile(book.txt,ios:out)。for (int i=0。i=top。i+)if (booki.gettag()=0) file.write(char *)&booki,sizeof(booki)。file.close()。void BDatabase:b
14、ookdata()char choice。char bname40。char bkind40。char newType20。char bauthor40。char bpress40。int bookid。Book *b。while (choice!=0)coutendl。coutendl。cout图书管理 系 统endl。coutendl。cout1.新增图书endl。cout2.更改图书endl。cout3.删除图书endl。cout4.查找图书endl。cout5.统计图书endl。cout6.清空全部endl。cout0.退出系统endl。case 3:coutendl。coutchoi
15、ce。switch (choice)case 1:cout输入图书编号:bookid。cout输入图书类型:newType。cout输入图书书名:bname。cout输入图书作者:bauthor。cout输入出版社:bpress。addbook(bookid,bname,newType,bauthor,bpress)。break。case 2:cout输入图书编号:bookid。b=query(bookid)。if(b=NULL)cout该图书不存在endl。break。cout输入新的书名:bname。b-setname(bname)。cout输入新的类型:bkind。b-setkind(b
16、kind)。cout输入新的作者:bauthor。b-setauthor(bauthor)。cout输入新的出版社:bpress。b-setpress(bpress)。break。cout读入图书编号:bookid。case 0:b=query(bookid)。if(b=NULL)cout该图书不存在endl。break。char tg1。cout确定要删除此记录吗?(Y/N)tg1。if(tg1!=n&tg1!=N)b-delbook()。cout已成功删除该书记录!endl。break。case 4:cout读入图书编号:bookid。b=query(bookid)。if (b=N
17、ULL)cout该图书不存在endl。break。coutdisp()。break。case 5:cout图书编号 图书名称 图书类型 图 书作者 出版社n。disp()。break。case 6:char tg2。cout确定要清空所有记录吗?(Y/N)tg2。if(tg2!=n&tg2!=N)clear()。cout已成功清空记录!endl。case 0:break。break。default:cout输入错误,请从新输入(数字为06):。/main()函数的实现,程序的主界面的引导void main()system(color 3f)。char choice。BDatabase
18、BookDB。while(choice!=0) cout欢迎使用endl。coutendl。coutendl。coutendl。coutendl。cout 图 书 管 理 系 统endl。coutendl。coutendl。coutendl。coutendl。coutendl。coutendl。coutendl。coutendl。coutendl。coutby侯想 孙昱 周易endl。coutendl。coutttt1进 入 系 统nnttt0离 开endl。coutchoice。switch(choice)case 1:BookDB.bookdata()。break。default:cout
19、输入错误,请从新输入:。注)/操作环境:在win7 32位系统中使用软件Microsoft visual c+6.0简体中文版编 写。(六)课程设计心得1.设计心得体会(侯想)说起课程设计,我认为最重要的就是做好设计的预习,认真的研究老师给 的题目,选一个自己有兴趣的题目。其次,老师对实验的讲解要一丝不苟的去 听去想,因为只有都明白了,做起设计就会事半功倍,如果没弄明白,就迷迷 糊糊的去选题目做设计,到头来一点收获也没有。最后,要重视程序的模块 化,修改的方便,也要注重程序的调试,掌握其方法。虽然这次的课程设计算起来在实验室的时间只有三天,不过因为我们都有 自己的实验板,所以在宿舍里做实验的时
20、间一定不止三天。通过此次课程设计,使我更加扎实的掌握了有关C+程序设计方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一 遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验 不足。实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈 兵。在课程设计过程中,我们不断发现错误,不断改正,不断领悟,不断获 取。最终的检测调试环节,本身就是在践行“过而能改,善莫大焉”的观念。 这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导 下,终于解决了。在今后社会的发展和学习实践过程中,一定要不懈努力,不 能遇到问题就想到要退缩,一定要不厌其烦
21、的发现问题所在,然后一一进行解 决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而 不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会 及他人对你的认可。2.设计心得体会(孙昱)coutnntttbreak。欢迎再次使用图书管理系统指导教师评语(包括工作态度,遵守纪律;基本理论、知识、技能;独立工作能力和分析解决问题的能力;完成任务情况及水平):指导教师:年 月 日对我们大学生而言,课程设计无疑是一个锻炼与提升自我的机会,进一步 使我们了解到计算机程序设计基础C+这门课程的意义与实用价值。在做这项 任务的过程中,我深刻体会到了自己能力的不足,这来自于我程序设
22、计基础的 薄弱和自我锻炼机会的欠缺。这次的C+程序设计实践令我收获颇多,也感慨颇多。首先,我们经常会 遇到困难,而这些困难看上去似乎已经超出了自己的能力范围,凭自己无法解 决。事实上,是我们自己把困难放大了,在没有真正去接触、去思考、去设法 解决问题之前,没有人有权力说自己做不到。其次,我们要学会利用自己拥有 的资源,学会运用查阅书籍、上网查阅资料、询问同学的方法来帮助自己解决 问题。当然,查阅资料也要讲究方法策略。利用资源,获取帮助对我们来说也 是一种重要的能力,会使我们解决问题的过程更加顺利。然后,我们不能轻视 平时的基础知识,学会基础知识是完成任务的基础。如果平时学习不认真,基 础知识掌
23、握不牢固,到实际运用时就会浪费许多时间,遇到一些不必要的麻 烦。我平时对于程序设计不太感兴趣,学习时也不努力,因而在做实践时遇到 了不少问题。因此有着扎实的基础知识十分重要。这次的课程设计带给我很大的帮助和收获。我相信,只要通过不懈努力,就能把事情做好。3.设计心得体会(周易)课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对我们的实际工作能力的具体训练和考察过程。随 着科学技术发展的日新月异,当今计算机应用在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握程序开发技术是十分重要的,而C+又是最常见,功能最强大的一种高级语言,因此做好C+
24、课程设计是十分必要的。回顾起此次课程设计,至今我们仍感慨颇多,的确,自从拿到题目到完成整个 编程,从理论到实践,在整整两个周的日子里,可以学到很多很多的东西,同 时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过 的知识。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做 的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之 处,对一些前面学过的知识理解得不够深刻,掌握得不够牢固,比如说结构 体,指针,链表通过这次课程设计之后,我们把前面所学过的知识又重新温故了一遍编程是一件很枯燥很无聊的事情,但是出于完成作业,得到学分的压力,还 必须强迫自己坚持下去
25、,按照老师所说的模块化思想,分部分的进行编写。而 且编程是一件高精度、模范化的事情,稍有疏乎都会影响全局,也可能因为某 一处的小的错误而导致整个程序的无法运行。所以认真仔细就是非常重要的 了。开始的时候真的感觉编程是一件很无聊的事情,不过当一个程序运行成功 的时候那种喜悦是无法言语的,那种成就感是无法比拟的。又经过几天的努 力,终于把程序完成了,尽管程序还是有很多错误和漏洞,不过还是很高兴 的。无论如何是我们的劳动成果,是我们经过努力得到的成绩,同时也是学习C+勺一次实践作业,我们进步的证明。在课程设计过程中,收获知识,提高能力的同时,我们也学到了很多人生的 哲理,懂得怎么样去制定计划,怎么样
26、去实现这个计划,并掌握了在执行过程 中怎么样去克服心理上的不良情绪。因此在以后的生活和学习的过程中,我们 一定会把课程设计的精神带到生活中,不畏艰难,勇往直前。(七)报告评定及评语1.成绩表中南大学C+程序设计基础课程设计成绩表姓名班次学号成绩2.评语班级:机械1309学生姓名:侯想 周易孙昱指导教师评语(包括工作态度,遵守纪律;基本理论、知识、技能;独立工作能力和分析解决问题的能力;完成任务情况及水平):指导教师:年 月 日版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整 理。版权为潘宏亮个人所有This article in eludes some parts, in cludi ng text, pictures, and design. Copyright is Pan Hon glia ngs pers onal own ership.用户可将本文的内容或服务用于个人学习、研究或欣赏,以及 其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关 法律的规定,不得侵犯本网站及相关权利人的合法权利。除此以 外,将本文任何内容或服务用于其他用途时,须征得本人及相关权 利人的书面许可,并支付报酬。Users may use the co
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 耐候性聚氨酯弹性地板行业深度调研及发展项目商业计划书
- 环保型铸造脱模剂行业深度调研及发展项目商业计划书
- 历史文化街区灯光秀企业制定与实施新质生产力项目商业计划书
- 凉拌面铺子行业深度调研及发展项目商业计划书
- 传统纺纱体验行业跨境出海项目商业计划书
- 高精度半导体厚度测量仪行业深度调研及发展项目商业计划书
- 生物制药工艺改进企业制定与实施新质生产力项目商业计划书
- 高效能岩棉防火保温板行业深度调研及发展项目商业计划书
- 纳米级防水透气涂层行业跨境出海项目商业计划书
- 农家乐餐饮体验馆企业制定与实施新质生产力项目商业计划书
- 2025年4月自考00242民法学试题及答案含评分标准
- 2025年氢化丁晴橡胶发展现状及市场前景趋势分析
- 第18课《井冈翠竹》课件-2024-2025学年统编版语文七年级下册
- 【MOOC】《思想道德与法治》(东南大学)章节中国大学慕课答案
- 【MOOC】以案说法-中南财经政法大学 中国大学慕课MOOC答案
- 卜算子-送鲍浩然之浙东课件
- 上海市社区工作者管理办法
- 颅脑损伤患者护理查房课件
- 口腔疾病与全身系统性疾病的关系课件
- 年产16万吨焦油焦油车间蒸馏工段工艺初步设计 毕业设计
- 霍乱弧菌实验室检测PPT
评论
0/150
提交评论