C++课程设计员工管理讲课教案.doc
《C++课程设计员工管理讲课教案.doc》由会员分享,可在线阅读,更多相关《C++课程设计员工管理讲课教案.doc(51页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Good is good, but better carries it.精益求精,善益求善。C+课程设计员工管理-淮阴工学院C+程序设计课程设计报告选题名称:员工管理系(院):计算机工程学院专业:软件工程班级:软件1111姓名:周淼学号:1111315217指导教师:于长辉学年学期:20112012学年第1学期2012年1月6日设计任务书课题名称员工管理设计目的1. 调研并熟悉幻方的基本功能、数据流程与工作规程;2. 学习与幻方相关的参考资料和基于VC+集成环境的编程技术;3. 通过实际编程加深对基础知识的理解,提高实践能力;4. 学习开发资料的收集与整理,学会撰写课程设计报告。实验环境1.
2、微型电子计算机(PC);2. 安装Windows2000以上操作系统,VisualC+6.0开发工具。任务要求1. 利用课余时间去图书馆或上网查阅课题相关资料,深入理解课题含义及设计要求,注意材料收集与整理;2. 在第16周末之前完成预设计,并请指导教师审查,通过后方可进行下一步工作;3. 本课题主要实现添加、修改、删除、读出、写入、查找、排序等。4. 结束后,及时提交设计报告(含纸质稿、电子稿),要求格式规范、内容完整、结论正确,正文字数不少于3000字(不含代码)。工作进度计划序号起止日期工作内容12012.1.22012.1.3在预设计的基础上,进一步查阅资料,完善设计方案,形成书面材料
3、。22012.1.32012.1.4设计总体方案,构建、绘制流程框图,编写代码,上机调试。32012.1.42012.1.5测试程序,优化代码,增强功能,撰写设计报告。42012.1.52012.1.6提交软件代码、设计报告,参加答辩,根据教师反馈意见,修改、完善设计报告。指导教师(签章):年月日摘要:随着经济的快速发展,一个好的员工管理系统在企业及用人单位扮演者重要角色。因此,本次我设计的课题是员工管理系统。为了设计一个功能完善的的员工管理系统,我查阅图书,搜集了许多有关C+方面的资料,学会了switch语句的使用、全局对象数组(Person100)的定义、函数调用机制的实现等诸多技能,并且
4、将一部分课外的知识运用于我的代码,例如:使程序运行稍作停顿(Sleep(1000))。在具体编程时,我没有使用链表结构,而是直接定义了一批全局对象数组,把员工信息通过函数储存在定义的全局对象数组中。也因为这样,使得编译时候错误发生的减少了很多。然而,在初步设计好该系统后,我发现这样的系统只能储存有限数目的员工信息,无法做到员工信息储存的不限量。但是考虑到实际应用,只要定义的全局对象数组达到200个就会足够企业使用。关键词:员工管理;全局对象数组;编程经验目录1课题综述-5-1.1课题来源-5-1.2课题意义-5-1.3预期目标-5-1.4面对的问题-5-1.5需要解决的关键技术-5-2总体方案
5、-5-3系统设计-5-3.1.1算法描述-6-3.1.2实现方法-6-3.1.3详细设计-7-3.2员工管理系统程序模块设计-8-4代码编写-8-5程序调试-21-6问题与解决办法-22-总结-23-致谢-24-参考文献-25-1课题综述1.1课题来源现代社会经济发展迅速,不同类型人才在公司企业间的流动十分频繁,传统的纸质员工管理系统已不适合现阶段的实际情况。为此,必须通过设计新的更为便捷、操作简单、不受时空限制的员工管理系统来管理员工信息。否则既浪费时间,又不能适应经济社会发展。1.2课题意义设计一款新的员工管理系统,在实现系统添加、删除、查找、修改保存、排序等功能的同时,既锻炼了我实践操作
6、能力,又增加了我对C+语言的熟悉程度,同时还初步了解了公司企业对员工的管理制度、增加了团队协作能力。1.3预期目标设计一个员工管理系统:定义一组全局对象数组;对部分全局对象数组进行操作;实现数据的输入、输出、查找、修改、删除、排序等。1.4面对的问题对VC环境下的系统编制程序不够熟悉,有的功能无法找到合适的代码,对部分临界数据的处理不够精确,代码的注释不能让他人完全理解。1.5需要解决的关键技术对部分全局对象数组进行操作,不影响其他已储存的数据。同时,要设计相应程序实现把数据储存在系统中,即使从新打开系统也要让数据存在。使用switch()语句实现函数的调用,最终实现系统的协调运作。2总体方案
7、使用C+语言设计员工管理系统,通过函数调用方式使其能完成对员工的信息管理,对员工信息的任意添加(add())、查询(find())、删除(dele())、修改(modify())、保存(save())及排序(index())3系统设计3.1.1算法描述在主界面上选择相应操作项,通过运用switch语句来判断相应指令,实现对以下功能的选择1:add()添加员工信息2:modify()修改员工信息3:dele()删除员工信息4:index()排序员工信息5:find()查询员工信息6:save()保存员工信息。并用六个函数来实现各个部分的功能:voidadd();voidfind();voidde
8、le();voidmodify();voidsave()和voidindex()。在执行完每一次数据操作后,通过判断程序,来判断是否返回等。如返回,则操作同开始,否则执行其他操作。3.1.2实现方法共同的基类person包含如下信息:classPersonpublic:Person()/构造函数voidsetPerson(char*num1,char*name1,char*sex1,char*birth1,char*tel1,char*salary1);/成员数据的修改函数;friendvoidadd();/声明为Person的友元,函数功能为:1.员工信息输入friendvoidmodify
9、();/声明为Person的友元,函数功能为:2.员工信息修改friendvoiddele();/声明为Person的友元,函数功能为:3.员工信息删除friendvoidindex();/声明为Person的友元,函数功能为:4.员工信息排序friendvoidfind();/声明为Person的友元,函数功能为:5.员工信息查找friendvoidsave();/声明为Person的友元,函数功能为:6.员工信息保存friendvoidread();private:/声明编号、姓名、出生年月、性别、联系电话、基本工资等成员变量charnum15;charname15;charsex5;ch
10、arbirth15;chartel15;charsalary15;在主函数中运用Switch(choice)选择需要的功能:switch(choice)case1:add();/1.员工信息输入break;case2:modify();/2.员工信息修改break;case3:dele();/3.员工信息删除break;case4:index();/4.员工信息排序break;case5:find();/5.员工信息查找break;case6:save();/6.员工信息保存break;default:run=0;break;3.1.3详细设计1.员工档案管理系统构建框架u 1、添加员工信息u
11、 2、修改员工信息u 3、删除员工信息u 4、员工信息排序u 5、查找员工信息u 6、保存员工信息u 7、退出管理系统3.2员工管理系统程序模块设计模块一:头文件,变量定义,函数的声明对系统所使用的变量进行定义,对函数进行声明模块二:员工信息的添加voidadd()/1.添加员工信息模块三:员工信息修改voidmodify()/2.员工信息修改模块四:员工信息删除voiddele()/3.员工信息删除模块五:员工信息排序voidindex()/4.员工信息排序模块六:员工信息查找voidfind()/5.员工信息查找模块七:员工信息保存voidsave()/6.员工信息保存4代码编写#incl
12、ude#include#include#include#include#include/字符转浮点atof()usingnamespacestd;intNUM=0;/计数员工的个数intsaveCtrl=1;/该变量用于检测数据的修改后是否保存的情况classPersonpublic:Person()/构造函数voidsetPerson(char*num1,char*name1,char*sex1,char*birth1,char*tel1,char*salary1);/成员数据的修改函数;friendvoidadd();/1.员工信息输入friendvoidmodify();/2.员工信息修
13、改friendvoiddele();/3.员工信息删除friendvoidindex();/4.员工信息排序friendvoidfind();/5.员工信息查找friendvoidsave();/6.员工信息保存private:/声明编号、姓名、出生年月、性别、联系电话、基本工资等成员变量charnum15;charname15;charsex5;charbirth15;chartel15;charsalary15;PersonPer500;/声明全局Person对象数组voidPerson:setPerson(char*num1,char*name1,char*sex1,char*birth
14、1,char*tel1,char*salary1)strcpy(num,num1);strcpy(name,name1);strcpy(sex,sex1);strcpy(birth,birth1);strcpy(tel,tel1);strcpy(salary,salary1);voidmenu()/主菜单coutsetw(45)员工管理系统endl;coutendl;coutendl;coutsetw(45)1.员工信息添加endl;coutsetw(45)2.员工信息修改endl;coutsetw(45)3.员工信息删除endl;coutsetw(45)4.员工信息排序endl;coutse
15、tw(45)5.员工信息查找endl;coutsetw(45)6.员工信息保存endl;coutsetw(37)0.退出endl;cout请选择(06):;coutsetiosflags(ios:left)请输入选择项(06):endl;voidadd()/1.添加员工信息charnum15;/编号charname15;/姓名charsex5;/性别charbirth15;/生日chartel15;/电话charsalary15;/工资charp;/用于选择判断system(cls);/清屏while(1)/控制信息添加多次的循环cout输入员工信息:endl;cout编号姓名性别生日电话工资
16、num;cinnamesexbirthtelsalary;for(inti=0;iNUM;i+)/检测所添加员工的编号是否存在if(strcmp(Peri.num,num)=0)cout该编号的已经存在endl;system(pause);/按任意键继续return;p=0;cout请选择:t1.确认添加数据t2.重新输入t3.返回主菜单p;/控制是否确认添加数据if(p3)cout没有这个选项!n请重新输入:endl;continue;if(p=2)/重新输入数据continue;if(p=3)/返回主菜单return;PerNUM.setPerson(num,name,sex,birth,
17、tel,salary);cout添加数据成功!endl;saveCtrl=0;NUM+;coutp;/返回主菜单if(p=y|p=Y)return;voidmodify()/2.员工信息修改system(cls);/清屏if(NUM=0)/判断员工数是否为0,即是否存在员工记录,若无记录,则退出函数cout没有任何员工记录。即将返回主菜单;Sleep(1000);return;charnum15;cout编号姓名性别生日电话工资endl;for(inti1=0;i1NUM;i1+)/列出现有的员工的详情,方便修改coutPeri1.numtPeri1.nametPeri1.sextPeri1.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 课程设计 员工 管理 讲课 教案
限制150内