C++高校人员信息管理系统课程设计报告 .pdf
《C++高校人员信息管理系统课程设计报告 .pdf》由会员分享,可在线阅读,更多相关《C++高校人员信息管理系统课程设计报告 .pdf(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.基于 C+的面向对象程序设计实例课程设计报告报告题目:高校人员信息管理系统作者所在系部:计算机科学与工程系作者所在专业:计算机科学与技术专业作者所在班级:作 者 姓 名:指导教师姓名:完 成 时 间:2012.6 摘要名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 35 页 -.在当前的市场经济体制下,企业间竞争不断,企业的发展与企业的有效管理密不可分,一个企业要偶适合自身特点的信息化管理系统,以实现企业降低成本、及时反馈市场信息、完善服务质量、提高经济效益、分析市场需求、制定销售计划和目标等管理目的。本文利用 Microsoft Visual C+6.0 编写程序,实现了用户
2、对公司经理、技术人员、销售人员和销售经理管理操作。本系统主要有八个功能模块:添加功能、查询功能、显示功能、编辑功能、删除功能、统计功能、保存功能、读取功能关键词:系统设计类信息面向对象目录摘要.1第一章绪论.311 课程设计的目的.4名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 35 页 -.12 课程设计的背景和意义.4121 课程设计的背景.4122 课程设计的意义.413 课程设计环境.5第二章需求分析.621 问题描述.622 功能要求.623 问题的解决方案.6第三章系统设计.831 数据设计.8311 类设计.8312 类之间的关系.10313 函数设计.1032
3、结构设计.10321 系统流程图.10322 界面设计.11第四章系统实现.1341 类实现.1342 函数实现.1343 主函数实现.21第五章系统测试.2351 模块测试.2352 课程设计过程中遇到的问题.28总结.29 致谢.错误!未定义书签。0参考文献.31任务书.32第一章绪论11 课程设计的目的C+面向对象程序设计 是计算机专业的基础课程,本课程按照软件程序设计所需能力进行教学设计,提出以项目模块方式带动相关知识点、实践项目和理论并行的思路,将案例贯穿于课程始终,对原有的教学体系、教学内容进行重新编排,按照从易到难的原则,将其名师资料总结-精品资料欢迎下载-名师精心整理-第 3
4、页,共 35 页 -.巧妙地融入到项目开发过程中,降低学习难度,提高学生学习的信心,有效培养学生的应用能力和学习能力。12 课程设计的背景和意义随着社会的发展,各种公司规模逐渐变大,需要对公司的员工信息进行统一有效的管理,方便的对人员的信息进行增添、查阅、修改、删除、保存,这就必须有一个实用的管理系统。121 课程设计的背景1.理论研究基础掌握 C+基本知识,具体包括:掌握面向对象基本知识和基本概念,掌握静态成员的定义与作用,掌握友元的定义,掌握运算符重载方法,继承与派生,虚函数的定义和使用,输入、输出流操作,文件的创建、打开、读写、关闭等。2.技术层面的支持(1)定义基类与派生类,将数据成员
5、与成员函数封装在类中。(2)设计增添、显示、查询、修改、删除、保存等函数。122 课程设计的意义(1)通过课程设计的综合训练,培养了学生分析解决实际问题和编程等实际动手能力。帮助了同学系统的掌握C+课程的主要内容。(2)通过详细的实例分析,循环渐进的描述,启发学生顺利的完成设计。课程设计将设计要求、需求分析、算法设计、编程和实例测试运行分开,为学生创造分析问题、独立思考的条件。(3)通过编写一个较长的程序,实现了对人员信息的管理,激发了学生学习编程的兴趣。13 课程设计环境Microsoft Visual C+6.0 名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 35 页 -.
6、第二章需求分析21 问题描述某高校有四类员工:教师、实验员、行政人员,教师兼行政人员;共有的信息包括:编号、姓名、性别、年龄等。其中,教师还包含的信息有:所在系部、专业、职称;实验员还包含的信息由:所在实验室、职务;行政人员还包含的信息有:政治面貌、职称等。名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 35 页 -.22 功能要求(1)基本功能1)添加功能:程序能够任意添加上述四类人员的记录,可提供选择界面供用户选择所要添加的人员类别,要求员工的编号要唯一,如果添加了重复编号的记录时,则提示数据添加重复并取消添加。2)查询功能:可根据编号、姓名等信息对已添加的记录进行查询,如果
7、未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。3)显示功能:可显示当前系统中所有记录,每条记录占据一行。4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。5)删除功能:主要实现对已添加的人员记录进行删除。如果当前系统中没有相应的人员记录,则提示“记录为空!”并返回操作;否则,输入要删除的人员的编号或姓名,根据所输入的信息删除该人员记录,如果没有找到该人员信息,则提示相应的记录不存。6)统计功能:能根据多种参数进行人员的统计。例如,统计四类人员数量以及总数,或者统计男、女员工的数量,或者统计某年龄段人员的数量等。7)保存功能:可将当前系统中各类人员记录存入文
8、件中,存入方式任意。8)读取功能:可将保存在文件中的人员信息读入到当前系统中,供用户进行使用。23 问题的解决方案根据系统功能要求,可以将问题解决分为以下步骤:1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;2)分析系统中的各个实体及它们之间的关系;3)根据问题描述,设计系统的类层次;4)完成类层次中各个类的描述;5)完成类中各个成员函数的定义;6)完成系统的应用模块;7)功能调试;8)完成系统总结报告。名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 35 页 -.第三章系统设计31 数据设计311 类设计1.人员的管理需包含人员的基本信息,所以定义一个人员类如表
9、3-1 所示:表 3-1 员工类名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 35 页 -.类名人员类数据成员protected:num(编号)char name20(姓名)char sex10(性别)age(年龄)成员函数public:Input():输入函数Output():输出函数GetNum():获取编号GetName():获取姓名2.根据高校人员的工作性质的不同,将所有员工分为教师、实验员、行政人员,教师兼行政人员表 3-2 教师类类名教师类(公有继承员工类)数据成员protected:char depart20(部门);char spec20(专业);char ti
10、tle20(职称);成员函数public:void Input_1():输入函数void Output_1():输出函数char GetDepart():获取部门char GetSpec():获取专业char GetTitle():获取职称friend Tea_Manage:友元教师管理类表 3-3 实验员类类名实验员类(公有继承员工类)数据成员protected:char textroom20(所在实验室)char post20(职务)成员函数public:void Input_3():输入函数void Output_3():输出函数char GetTextroom():获取实验室名师资料总
11、结-精品资料欢迎下载-名师精心整理-第 8 页,共 35 页 -.char GetPost():获取职务friend Exp_Manage:友元实验人员管理类表 3-4 行政人员类类名行政人员类(公有继承员工类)数据成员public:char politics20:(政治面貌)char title20:(职称)成员函数public:void Input_2():输入函数void Output_2():输出函数char GetPolitics():获取政治面貌char GetTitle():获取职称friend Sta_Manage:友元行政人员管理类表 3-5 教师兼行政人员类类名教师兼行政人
12、员类(公有继承员工类)数据成员成员函数Public:void Input_4():输入函数void Output_4():输出函数friend Tea_Sta_Manage:友元教师行政人员管理类4、为了控制以上的类,分别建立了4 个管理类,以经理的管理了为例:表 3-6 教师管理类名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 35 页 -.类名教师管理类数据成员Teacher Tea20(创建教师的空间);top(统计人员数和进行操作时的指针);312 类之间的关系员工类派生出教师类、实验员类、行政人员类,教师类和行政人员类派生出教师兼行政人员类。313 函数设计根据要求,为
13、了功能的实现,通过top 实现功能。分别以8 个功能函数进行对数据的操作(下面以经理类为例)void Add();(信息的添加)void Search();(信息的查找)void Edit();(信息的编辑)void Total();(信息的统计)void Delete();(信息的删除)void Show();(信息的显示)void Save();(信息的存储)void Read();(信息的读取)32 结构设计321 系统流程图名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 35 页 -.322 界面设计1.主菜单界面,如图33 所示图 33 主菜单2.教师菜单界面,如图3
14、-4 图 34 教师管理界面3.教师查询界面,如图3-5 所示:图 35 教师查询界面教师类实验员类行政人员类教师兼行政人员类名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 35 页 -.4.教师删除界面,如图3-6 所示:图 36 教师删除界面第四章系统实现41 类实现class Person/人员类class Teacher:virtual public Person/教师类class Staff:virtual public Person/行政人员类class Experimenter:public Person/实验员类名师资料总结-精品资料欢迎下载-名师精心整理-第
15、12 页,共 35 页 -.class Tea_Sta:public Teacher,public Staff/教师兼行政人员类class Tea_manage/教师管理类class Sta_manage/行政人员管理类class Exp_manage/实验员管理类class Tea_Sta_manage/教师兼行政人员管理类42 函数实现void Person:Input()/员工信息输入 cout 请输入编号:num;cout 请输入名字:name;cout 请输入性别:sex;cout 请输入年龄:age;void Teacher:Input_1()/教师信息输入 Input();cou
16、t 请输入所在系别:depart;cout 请输入专业名称:spec;cout 请输入职称:title;void Person:Output()/员工信息输出 cout 编号:numendl;cout 姓名:nameendl;cout 性别:sexendl;cout 年龄:ageendl;void Teacher:Output_1()/教师信息输出 Output();cout 所在系别:departendl;cout 所在专业:specendl;cout 职称:titleendl;名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 35 页 -.int Person:GetNum(
17、)/返回编号 return num;char Person:GetName()/返回姓名 return name20;char Person:GetSex()/返回性别 return sex10;int Person:GetAge()/返回年龄 return age;char Teacher:GetDepart()/返回所在部门 return depart20;char Teacher:GetSpec()/返回专业 return spec20;char Teacher:GetTitle()/返回职称 return title20;void Tea_Manage:Add()/教师信息的添加 Te
18、acher t;cout 请输入新增人员的信息:endl;t.Input_1();int i;for(i=0;itop;i+)名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 35 页 -.if(t.GetNum()=Teai.GetNum()cout 编号已存在,请重新输入:1000)cout 内存已满,不可添加endl;else if(top=1000)Teatop=t;cout 添加成功 endl;top+;return;void Tea_Manage:Show()/教师信息的显示 for(int i=0;itop;i+)Teai.Output_1();cout.endl;
19、void Tea_Manage:Search()/教师信息的查询 if(top=0)cout没有任何信息endl;int choice;int i=0;名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 35 页 -.int m=0;int n=0;int num;cout 请输入您的选择:endl;cout 查询方式1.按名字2.按编号 choice;switch(choice)case 1:char name20;cout 请输入您所查询的人员名字:name;for(i;itop;i+)if(!strcmp(name,Teai.name)Teai.Output_1();brea
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+高校人员信息管理系统课程设计报告 2022 C+ 高校 人员 信息管理 系统 课程设计 报告
限制150内