c++人才信息管理系统课程设计报告.docx
《c++人才信息管理系统课程设计报告.docx》由会员分享,可在线阅读,更多相关《c++人才信息管理系统课程设计报告.docx(16页珍藏版)》请在冰豆网上搜索。
c++人才信息管理系统课程设计报告
课程设计(论文)
题目:
就业中心人才信息管理系统
院系:
信息与控制工程学院
专业班级:
计算机科学与技术
姓名:
学号:
指导教师:
大学课程设计(论文)任务书
专业班级:
学生姓名:
指导教师(签名):
一、课程设计(论文)题目
就业中心人才信息管理系统
二、本次课程设计(论文)应达到的目的
面向对象程序设计是实践性很强的课程。
课程设计是加强学生实践能力的一个强有力手段。
课程设计要求学生在完成程序设计的同时能够写出比较规范的设计报告。
严格实施课程设计这一环节,对于学生基本程序设计素养的培养和软件工作者工作作风的训练,将起到显著的促进作用。
本题目要达到目的:
熟练掌握面向对象程序设计思想,会设计和实现简单的类库,并应用类库解决具体问题。
三、本次课程设计(论文)任务的主要内容和要求(包括原始数据、技术参数、设计要求等)
要求:
要求学生在认真复习教材的基础上,查阅相关资料、认真阅读相关的设计要求,独立按时完成任务;课程设计的说明书、论文要求简洁、通顺、计算正确,程序完整、清楚、规范。
主要内容:
实现就业中心人才信息管理系统的基本功能,具体要求为:
1.实现对人才信息的录入的功能;
2.实现人才信息的添加、修改、删除的功能;
3.实现人才信息的查询的功能。
四、应收集的资料及主要参考文献:
1.《C++面向对象程序设计》(美)萨维奇,清华大学出版社,2007.
2.《面向对象程序设计》蔡宇辉,机械工业出版社,2011.6.
3.其他与本课程设计题目相关的资料
五、审核批准意见
教研室主任(签字)
摘要
随着计算机技术的发展,人们管理信息的方式早已智能化、简便化。
然而我国每年都会新增许多毕业生,待业人数居高不下。
如果有一个妥善且方便的工具来管理庞大的失业大军信息,将更有利于对其进行统筹兼顾!
因此我设计一款就业中心人才信息管理系统,可以提高效率、简化登记方式,本系统具有人才信息录入、人才信息查看、人才信息删除、人才信息查找和用户修改人才信息等功能。
本系统包含一个人才类,使用数组对其进行数据管理,并且使用txt文档对数据进行了存取,保证数据不随程序关闭而丢失。
基本实现了一个人才管理系统最基本的要求。
关键词:
面向对象方法学,人才信息管理系统,数组,文件操作,信息录入
目录
一、需求分析1
二、概要设计2
三、详细设计3
四、调试分析10
五、使用说明12
六、课设总结12
七、参考文献13
一、需求分析
1.1需求概述
<1>输入数据:
编写一个人才类,其种类的数据成员有:
人才编号、姓名、学历、毕业院校、专业、年龄、性别等信息。
<2>实现功能:
上述人才类的成员函数有:
1·人才信息录入
2·人才信息查看
3·人才信息删除
4·人才信息修改
5·人才信息查找
<3>数据储存:
在每一个操作后将最新数据以二进制形式储存在txt文档中,下次打开程序时,从文档中读取数据。
1.2功能结构图
图1.2功能结构图
1.3各功能模块详细说明
<1>插入人才信息
其中牵涉到文件流的输入,先请用户输入一个编号,然后检查次编号是否可用,如果可用,则请用户继续输入人才信息;如果不可用,提示用户编号错误,请重新输入。
<2>删除人才信息
先请用户输入要删除人员编号,如果此人员存在,则将其每一项信息改为”0”,完成删除。
<3>查看人才信息
通过一个for循环价将所有数据以矩阵形式表示出来,并且一个对象输出完毕换行,保证界面整齐。
<4>查找人才信息
查找人才信息分五种查找方法,分别为按编号查找、按专业查找、按姓名查找、按高校查找、按学历查找。
此功能用if嵌套语句实现。
<5>更改人才信息
如果用户要求更改的人确实存在,则一项项修改,需注意修改后要将此人信息重新读入文件,以完成整体修改。
二、概要设计
2.1类图
图2.1类库
2.2类库的详细说明
<1>类名称及含义
本系统设计了一个类Talents。
<2>类的属性
此类包含5个成员函数和9个数据成员。
成员函数分别执行的功能为插入人才信息、查看人才信息、查找人才信息、修改人才信息、删除人才信息;
数据成员分别为intnum人员编号、intage人员年龄、charcollege人员毕业学校、charmajor人员专业、charpho人员电话、charadd人员地址、charname人员姓名、charsex人员性别、chareducation人员学历
<3>数据组织方法
通过数组管理数据。
三、详细设计
3.1main()函数设计:
图3.1main函数设计
如上图3.1所示,main()函数首先在Dos界面上显示出用户界面,用户通过此界面输入命令m,switch(m)根据用户输入的m的值选择相应的操作,如果用户输入错误命令,则提示用户输入错误,重新输入,并退回到用户界面。
说明:
main外部定义一个全局类的数组Talentsx[50];
3.2Talents类成员函数算法:
①input()————插入人才信息算法
图3.2.1插入人才信息
如图3.2.1所示为插入人才信息的算法,其中牵涉到文件流的输入,先请用户输入一个编号,然后检查次编号是否可用,如果可用,则请用户继续输入人才信息;如果不可用,提示用户编号错误,请重新输入。
②look()————查看人才信息算法
图3.2.2查看人才信息
如图3.2.2所示为查看人才信息的算法,其中牵涉到文件流的输出,当用户输入命令时,文件指针定位在文件头,依次按一定的字节数显示,一个人信息输完后换行,使显示界面整齐美观。
③find()————查找人才信息算法
图3.2.3—1执行编号查找算法
图3.2.3—2查找人才信息
如图3.2.3—1和3.2.3—2所示为查找人才信息的算法,其中3.2.3—1为一个嵌套if语句实现对用户查找方法的识别,而3.2.3—2则为主要查找算法。
④change()————修改人才信息算法
如图3.2.4为修改人才信息算法如果用户要求更改的人确实存在,则一项项修改,此处重点是修改后要将此人信息重新读入文件,以完成整体修改。
图3.2.4修改人才信息
⑤delet()————删除人才信息算法
如图3.2.5为删除人才信息算法,先请用户输入要删除人员编号,如果此人员存在,则将其每一项信息改为”0”,完成删除。
图3.2.5删除人才信息
3.3数据结构:
数组
程序开始在函数主体main()中定义一个Talentsx[50];使用数组对类的不同对象进行存储。
四、调试分析
主界面:
图4.1程序运行主界面
插入信息:
图4.2插入信息
浏览信息:
图4.3浏览信息
查找:
图4.4查找人员
图4.5查找结果
删除:
图4.6删除人员
修改:
图4.7修改成员信息
五、使用说明
左键双击talents_management_system.exe运行程序,程序运行过程中会在talents_management_system.exe所在文件夹创建Talents.txt文件用来储存数据,请误删除,若误删将导致程序中所有数据丢失,可在回收站选择还原。
六、课设总结
①遇到的问题
<1>在文件的输入输出上不懂;通过查阅书籍和在网络上阅读别人的程序及查阅资料自学文件的输入输出。
<2>编写“find()”成员函数时,嵌套if语句不能执行if(f==5)下的语句,经过检查,发现在输入if(f==5)少数入了一个“=”,导致了上述结果。
②课程设计过程的收获
通过本次C++课程设计,动手能力和思考能力得到了很大提升,同时在实践中也查漏补缺,学习一些自己还不曾掌握的知识,受益匪浅。
同时,要编写出一个合格的程序,我们目前所掌握的知识技能还是远远不够的,今后还应继续努力,提高自己知识技能。
③程序调试能力的思考
调试程序时首先应先排除程序中的语法错误,使程序可以正常运行。
程序运行后,其次就是检查程序各项功能是否达到预期,如果有些功能不能实现或实现错误,应在调试中选择那一部分程序仔细观察代码(重点是程序变量,指针等等)是否正确;当功能实现无误后就应检查提高程序的容错能力,是这个程序完善,强大起来。
④对面向对象C++这门课程的思考
通过对C++的学习及程序实训的经历,深切的感受到了面向对象方法的优势。
面向对象的编程方法能有效的提高编程效率,他将对象作为程序的基本单元,将程序和数据封装其中,提高了软件的重用性、灵活性和扩展性。
七、参考文献
《双语版C++程序设计》保罗·凯利(PaulKelly)著,苏小红译
电子工业出版社出版
《挑战C++程序语言》蔡文辉黄国峰张真诚编著机械工业出版社
《C++答疑解惑与典型题解》汪名杰尹静郝立编著北京邮电大学出版社
《VisualC++6.0标准版培训教程》李松汤庸编著中国民航出版社