毕业设计论文教职工管理系统

上传人:沈*** 文档编号:69379924 上传时间:2022-04-05 格式:DOC 页数:25 大小:314KB
收藏 版权申诉 举报 下载
毕业设计论文教职工管理系统_第1页
第1页 / 共25页
毕业设计论文教职工管理系统_第2页
第2页 / 共25页
毕业设计论文教职工管理系统_第3页
第3页 / 共25页
资源描述:

《毕业设计论文教职工管理系统》由会员分享,可在线阅读,更多相关《毕业设计论文教职工管理系统(25页珍藏版)》请在装配图网上搜索。

1、天 津 大 学 网 络 教 育 学 院毕业设计(论文)任务书题目:教职工管理系统完成期限:2011年12 月 26日 至2012 年5月10日学 习 中 心 南京奥鹏 年 级1003专 业计算机科学与技术 指 导 教 师 姓 名 学 号 接受任务日期 2011年12月26日批 准 日 期 一、原始依据C语言程序设计 作者: 出版者:北京邮电大学出版社 序号:ISBN 978-7-5635-1384-0 版次:2007年3月第一版 2008年12月第四次印刷c程序设计(第三版)作者:谭浩强出版者:清华大学出版社序号:ISBN7-302-10853-6版次:2005年7月第3版 2006年2月第7

2、次印刷版二、设计内容和要求: 将每个功能分别编译实现,再通过函数包含,调用等方法实现各项功能间的连接为设计思想,并采用将教职工当作一个整体,整体类型为结构体,结构体中的域表示教职工的属性的这种定义结构作为数据结构。软件将各个模块的功能分为列菜单、表明结构体、录入、查询、删除及读取等来组成整个程序,实现对教职工资料的系统管理。该程序界面通俗易懂,易于操作,使操作者和使用者应用更加方便毕业设计(论文)进度计划表序号起止日期计划完成内容实际完成内容检查日期检查人签名12011.12.26-2012.2.26论文选题搜集资料完成22012.2.27-2012.3.26完成论文初稿完成32012.3.2

3、6-2012.4.10论文修改、提交论文二稿完成42012.4.11-2012.5.7学生完成论文终稿提交完成52012.2.7-2012.5.10论文定稿准备答辩完成67指导教师批准日期 年 月 日 签名注:1.任务完成后附在说明书内。2.“检查人签名”一栏和“指导教师批准日期”由教师用笔填写,其余各项均要求打印,打印字体和字号按照天津大学现代远程教育毕业设计(论文)格式规定执行。摘 要该论文分别对软件的需求进行分析,对软件的概要设计和软件的详细设计进行阐述,以及对软件的组装及测试的详细叙述,程序设计一般由两部分组成:算法和数据结构,合理选择和实现一个数据结构与处理这些数据结构具有同样的重要

4、性。以将每个功能分别编译实现,再通过函数包含,调用等方法实现各项功能间的连接为设计思想,并采用将教职工当作一个整体,整体类型为结构体,结构体中的域表示教职工的属性的这种定义结构作为数据结构。软件将各个模块的功能分为列菜单、表明结构体、录入、查询、删除及读取等来组成整个程序,实现对教职工资料的系统管理。该程序界面通俗易懂,易于操作,使操作者和使用者应用更加方便。关键词:数据结构;设计思想;界面;软件需求;概要设计;详细设计;组装及测试等。目 录1 软件的需求分析41.1软件达到的目的41.2 软件功能说明41.2.1 功能分析说明图41.2.2 各项功能说明41.3软件功能的验收标准52 软件概

5、要设计62.1 总体设计62.2 详细设计62.3 程序清单92.4 程序调试与体会182.5 运行过程截图183.总结22致谢23 1 软件的需求分析1.1软件达到的目的该软件主要是实现对学生成绩进行系统化的管理,首先可以对学生基本信息进行输入和存取,其次可以读取显示教职工的相关信息,然后可以删除和插入教职工的相关信息,还有就是可按员工编号查询此编号的教职工的相关信息。由此来系统化管理职工信息,并达到简易操作的目的。1.2 软件功能说明1.2.1 功能分析说明图该软件功能分析说明图如1-2-1所示: 教职工信息管理系统退出系统身份统计职工信息查找数据追加数据删除数据的读取职工基本信息录入与保

6、存 图:1-2-11.2.2 各项功能说明(1)职工基本信息的录入和保存:这部分的功能主要包括信息的录入和保存,首先按程序提示输入所要输入的职工编号,接着是分别输入有关学生的相关信息包括,姓名、职工分类、性别以及工资和职务等。在录入数据的同时,系统将对信息的合法性进行检验,若用户录入了不合法的数据系统将会作出提示,并且要求重新输入。如果合法性成立则录入完毕后系统将退回系统主页。,系统会自动将学生信息存入电脑。(2)读取职工信息: 此功能是将原录入并保存的的教职工信息读出,并在屏幕上显示出来。(3)删除职工信息: 进入该项功能界面后,用户可以通过职工编号对某个教职工信息进行删除。(4)追加职工信

7、息:进入插入界面,系统将提示输入新教职工的相关信息,程序则会将新的信息插入原教职工信息清单中,并将新的职工信息列表输出,以方便用户的确认。(5)按学号查找职工信息: 此项功能可以根据拥护输入的职工编号查出该教职工的所有信息。(6)职工职务的分析统计。 选择次项功能后,系统将自动在屏幕上显示出所有教职工各种职务的统计。(7)退出系统,结束任务。1.3软件功能的验收标准一、有较为美观简洁大方的菜单,能保证用户方便、直观、快捷的熟悉并使用软件的各项功能。二、有严密正确的数据验证功能和数据处理功能,对数据进行保存和读取,能按学号查找职工信息,以及插入和删除职工信息。三、系统要有一定的可靠性。2 软件概

8、要设计2.1 总体设计(1)定义员工(Person)类,其中包括编号、职工分类(行政人员,教师,一般员工,退休人员,返聘人员,临时工)、性别、工资,职务(无,科级,处级,地级);、职称(无,初级,中级,高级);、政治面貌(群众,中共党员,民主党派)、学历(中专,大专,大学,硕士,博士)。 (2)实现下面的功能 a、设计菜单实现功能选择; b、输入功能:输入员工的信息,并保存到文件中;c、删除资料:能够根据编号删除员工的资料;d、修改功能:能够根据编号来修改员工的资料;e、查询功能:能够根据编号来查看员工的资料; f、统计功能:能够统计在职人员、中共党员、女教职工、高职称、高学历的人数。 g、错

9、误提示功能:如果输入的资料不合法,将会提示错误,并给予指导。2.2 详细设计类 Personchar no100; /编号char duty30; /职工分类char sex10; /性别 int age; /年龄 char position30; /职务char zhicheng30; /职称char political30;/政治面貌 char record30; /学历 void add(); /增加信息 void delet(); /删除信息 void change(); /修改信息 void find(); /查找信息 void push(Person pp); /给类赋值(1) P

10、erson:add()(2) Person:delete()(3) Person:change()(4).Person:find()*/2.4 程序调试与体会通过对程序的调试,发现很多问题只有通过调试以后才能被找到和发现,才能更好的美化和优化,是程序看起来更完美,让使用者更放心。2.5 运行过程截图下面是我们程序的一些演示以及部分运行结果:(1).首先是程序执行的主菜单:.(2).执行1-5的指令后都会出现如下界面,要求输入员工的编号,因为该程序是基于从编号入手的:(3)当执行1号命令增加资料,并输入员工编号后要求输入与员工的资料:(4).当输入内容不合要求时会提示输入错误,并且提示合法的输入

11、内容:(5).当输入的编号已存在是会提示该编号已存在:(6).当执行删除资料、查找资料、修改资料后,如果输入的编号后有误,会提示编号不存在:(7).当执行修改资料,并输入正确的编号后,会出现该目录下的子菜单:(8).当执行子菜单下的指令,并修改成功后会提示修改完成(当然这里修改时如果输入不合题目要求同样会提示错误,并提示正确的输入内容,参照(4)):(9).当执行查找资料,并输入正确的编号后,会输出该编号员工的资料:(10).当执行查看统计后会出现如下界面:总结通过本次课程设计,让我对C+这门学科对有了进一步的认识,熟练掌握了类及类模板的应用。以前对该课程的恐惧感都以消失,任何事情没有做不到只

12、有愿不愿意去做。刚开始接到该题,心中确实充满困惑。不过在图书馆和网上找了一些资料看了后,便觉得思路就在眼前了,之前不过就是由于对该课程的恐惧而产生了一定的心里影响而已。之后凭借那闪现在眼前的点点思路,慢慢在琢磨,终于想出了大体的程序内容。然后一个一个函数的思考,一步一步的编写,调试,做起来也就越来越顺手了。通过我的反复思考,程序中的错误得到顺利解决。函数功能也得到了进一步的完善。并且在本次课程设计的过程中,让我进一步认识到了团队的力量,只有团结才能发挥出一个集体的力量。一个人的力量真的好有限,即使个人能力再强,做一个大点的项目,也会力不从心。只有分工协作才能将事办得越快越好。通过这次课程设计,

13、会为我们以后进入社会提供一定的经验。我们相信在今后的学习真的我们会更加努力,积累经验。使自己在编程等各方面得到提高。参考文献C语言程序设计 作者:夏涛 出版者:北京邮电大学出版社 序号:ISBN 978-7-5635-1384-0 版次:2007年3月第一版 2008年12月第四次印刷c程序设计(第三版)作者:谭浩强出版者:清华大学出版社序号:ISBN7-302-10853-6版次:2005年7月第3版 2006年2月第7次印刷版源代码#include #include using namespace std;const int N=1000;int t=0; int on=0; /统计在职人

14、员人数int dang=0; /统计中共党员人数int nv=0; /统计女性职工人数int gaozhi=0; /统计高职称人数int gaoli=0; /统计高学历人数class Person public: char sex10; /性别 char duty30; /职工分类 int cash; /工资 char political30; /政治面貌 char record30; /学历 char position30; /职务 char zhicheng30; /职称 char no100; /编号 void add(); /增加信息 void delet(); /删除信息 void

15、change(); /修改信息 void find(); /查找信息 void push(Person pp);/给列成员赋值 ;Person pN;void Person:push(Person pp) strcpy(no,pp.no); strcpy(sex,pp.sex); strcpy(position,pp.position); strcpy(zhicheng,pp.zhicheng); strcpy(political,pp.political); strcpy(record,pp.record); strcpy(duty,pp.duty); cash=pp.cash; if(st

16、rcmp(duty,退休人员) on+; if(strcmp(sex,女)=0) nv+; if(strcmp(zhicheng,高级)=0) gaozhi+; if(strcmp(political,中共党员)=0) dang+; if(strcmp(record,硕士)=0|strcmp(record,博士)=0) gaoli+;void tip() cout输入ENTER返回子菜单!endl; getchar(); getchar(); system(cls);void tip1() cout输入ENTER返回主菜单!endl; getchar(); getchar(); system(

17、cls);void Load() /通过文本输入数据 Person S; FILE *fp1; bool f=1; fp1=fopen(d:subject.txt,r);if(fp1=NULL) f=0; while(f&!feof(fp1) fscanf(fp1,%s%s%s%d%s%s%s%s,S.no,S.duty,S.sex,&S.cash,S.position,S.zhicheng,S.political,S.record); pt+.push(S); fclose(fp1);void Person:add() /录入信息 cout 现在录入编号为 no 的档案:endl; A1:c

18、outduty; if (strcmp(duty,行政人员)&strcmp(duty,教师)& strcmp(duty,一般员工)&strcmp(duty,退休人员)& strcmp(duty,返聘人员)&strcmp(duty,临时工) cout-(请输入正确的职工分类,例如:行政人员,教师,一般员工,退休人员,返聘人员,临时工)endl; goto A1; if(strcmp(duty,退休人员) on+; A2:coutsex; if(strcmp(sex,男)&strcmp(sex,女) cout-(请输入正确的性别,例如:男,女)endl; goto A2; if(strcmp(se

19、x,女)=0) nv+; A3:coutcash; if(cash=0) cout-(请输入正确的工资,例如:1等)endl; goto A3; A4:coutposition; if (strcmp(position,无)&strcmp(position,科级)& strcmp(position,处级)&strcmp(position,地级) cout-(请输入正确的职务,例如:无,科级,处级,地级)endl; goto A4; A5:coutzhicheng; if(strcmp(zhicheng,无)&strcmp(zhicheng,初级)& strcmp(zhicheng,中级)&st

20、rcmp(zhicheng,高级) cout-(请输入正确的职称,例如:无,初级,中级,高级)endl; goto A5; if(strcmp(zhicheng,高级)=0) gaozhi+; A6:coutpolitical; if (strcmp(political,群众)&strcmp(political,中共党员)& strcmp(political,民主党派) cout-(请输入正确的政治面貌,例如:群众,中共党员,民主党派)endl; goto A6; if(strcmp(political,中共党员)=0) dang+; A7:coutrecord; if (strcmp(rec

21、ord,中专)&strcmp(record,大专)& strcmp(record,大学)&strcmp(record,硕士) &strcmp(record,博士) cout-(请输入正确的学历,例如:中专,大专,大学,硕士,博士)endl; goto A7; if(strcmp(record,硕士)=0|strcmp(record,博士)=0) gaoli+; cout 编号为 no 的档案录入结束endlendl; t+; tip1();void Person:delet() /删除信息 no0=-; if(strcmp(duty,退休人员) on-; if(strcmp(sex,女)=0)

22、 nv-; if(strcmp(zhicheng,高级)=0) gaozhi-; if(strcmp(political,中共党员)=0) dang-; if(strcmp(record,硕士)=0|strcmp(record,博士)=0) gaoli-; cout删除员工信息成功!endlendl; tip1(); void Person:change() /修改信息 int n,flag=1; do A: cout *子菜单:修改资料*endl 修改哪些信息?endl 1(编号) 2(职工分类) 3(性别) 4(工资) 5(职务) 6(职称) 7(政治面貌) 8(学历) 9(退回主菜单)e

23、ndl n; if(n9) coutsorry,您输入的信息有误,请重新输入!endl;goto A; switch(n) case 1: coutno; cout员工编号修改成功endlendl; tip(); break; case 2: B1:coutduty; if (strcmp(duty,行政人员)&strcmp(duty,教师)& strcmp(duty,一般员工)&strcmp(duty,退休人员)& strcmp(duty,返聘人员)&strcmp(duty,临时工) cout(请输入正确的职工分类,例如:行政人员,教师,一般员工,退休人员,返聘人员,临时工)endl; go

24、to B1; if(strcmp(duty,退休人员) on+; cout员工职工分类修改成功endlendl; tip(); break; case 3: B2:coutsex; if (strcmp(sex,男)&strcmp(sex,女) cout(请输入正确的性别,例如:男,女)endl; goto B2; if(strcmp(sex,女)=0) nv+; cout员工性别修改成功endlendl; tip(); break; case 4: B3:coutcash; if(cash=0) cout(请输入正确的工资,例如:1500等)endl; goto B3; cout员工工资修改

25、成功endlendl; tip(); break; case 5: B4:coutposition; if (strcmp(position,无)&strcmp(position,科级)& strcmp(position,处级)&strcmp(position,地级) cout(请输入正确的职务,例如:无,科级,处级,地级)endl; goto B4; cout员工职务修改成功endlendl; tip(); break; case 6: B5:coutzhicheng; if (strcmp(zhicheng,无)&strcmp(zhicheng,初级)& strcmp(zhicheng,中

26、级)&strcmp(zhicheng,高级) cout(请输入正确的职称,例如:无,初级,中级,高级)endl; goto B5; cout员工职称修改成功endlendl; if(strcmp(zhicheng,高级)=0) gaozhi+; tip(); break; case 7: B6:coutpolitical; if (strcmp(political,群众)&strcmp(political,中共党员)& strcmp(political,民主党派) cout(请输入正确的政治面貌,例如:群众,中共党员,民主党派)endl; goto B6; if(strcmp(politica

27、l,中共党员)=0) dang+; cout员工政治面貌修改成功endlendl; tip(); break; case 8: B7:coutrecord; if (strcmp(record,中专)&strcmp(record,大专)& strcmp(record,大学)&strcmp(record,硕士) &strcmp(record,博士) cout(请输入正确的学历,例如:中专,大专,大学,硕士,博士)endl; goto B7; if (strcmp(record,硕士)=0|strcmp(record,博士)=0) gaoli+; cout员工学历修改成功endlendl; tip

28、(); break; case 9: tip1(); flag=0; break; while(flag);void Person:find() /查找信息(输出信息) cout员工的编号: ; coutnoendl; cout员工的职工分类: ; coutdutyendl; cout员工的性别: ; coutsexendl; cout员工的工资: ; coutcashendl; cout员工的职务: ; coutpositionendl; cout员工的职称: ; coutzhichengendl; cout员工的政治面貌: ; coutpoliticalendl; cout员工的学历: ;

29、 coutrecordendlendl; tip1();int main() Load(); int n , i,flag1=1; char num100; do A: cout *endl 教职工信息管理系统endl 主菜单endl endl 天津大学XX系 10级 成宁 学号:10030405endl endl *endl (1)增加资料endl (2)删除资料endl (3)修改资料endl (4)查找资料endl (5)查看统计endl (6)退出endl *注意:请将subject.txt(职工数据)文件放于D盘根目录下endl 请选择1-6进行操作: n; system(cls);

30、 if(n9) coutsorry,您输入的信息有误.endl;tip1();goto A; switch(n) case 1: C:coutnum; for(i=0;it;i+) if(strcmp(pi.no,num)=0) break; if (i!=t) coutSorry,您要增加的员工编号已存在,请重新输入!endlendl;goto C; strcpy(pt.no,num); coutendl; pt.add(); break; case 2: coutnum; for(i=0;it;i+) if (strcmp(pi.no,num)=0) pi.delet(); break;

31、coutendl; if(i=t) coutsorry,您输入的员工编号有误。endl;tip1(); break; case 3: coutnum; coutendl; for(i=0;it;i+) if (strcmp(pi.no,num)=0) pi.change(); break; if(i=t) coutsorry,您输入的员工编号有误。endl;tip1(); break; case 4: coutnum; coutendl; for(i=0;it;i+) if(strcmp(pi.no,num)=0) pi.find(); break; if (i=t) coutsorry,您输

32、入的员工编号有误。endl;tip1(); break; case 5: cout在职人员人数为:onendl; cout中共党员人数为:dangendl; cout女教职工人数为:nvendl; cout高职称人数为:gaozhiendl; cout高学历人数为:gaoliendl; cout(说明:1.在职人员不包括退休人员。 endl; cout 2.高学历包括硕士及博士。) endlendl; tip1(); break; case 6: flag1=0; coutendlendlendlendlendlendlendlendl 感谢您的使用,谢谢! endlendlendlendlendl; break; while(flag1); system(pause); 致谢经过这两周的实习,我们获得了许多在课堂上听课而不能获得的知识,首先我们要感谢学校给我们安排的这次的C语言程序设计实习,然后我要感谢老师们对我们热心的指导和帮助,是他们教会了我们怎样解决问题的方法,这样我们的软件设计才会更加顺利地进行,并且充分掌握了设计程序的方法。我们还要感谢许多同学的帮助,他们的帮助对于我们来说也是必不可少的。总之,是有了他们的帮助,我们才能顺利地完成软件设计,在这里我们要向他们说一句:谢谢,非常感谢!你们辛苦了!在设计该软件期间,给予帮助和支持的老师有:刘卫国。 实习生:成宁

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!