职工信息管理系统设计说明书.wps_第1页
职工信息管理系统设计说明书.wps_第2页
职工信息管理系统设计说明书.wps_第3页
职工信息管理系统设计说明书.wps_第4页
职工信息管理系统设计说明书.wps_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一章 功能需求描述 1.1 设计目的: 要求熟练掌握 c语言的基本知识和编辑技能; 基本掌握结构化程序设计的基本思路和方法。 1.2 设计要求 要求:设计一个职工信息管理系统,使之能提供以下功能: 1、 应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可 能清晰美观! 2、输入功能:职工信息录入(职工信息用文件保存),可以一次完成若干 条记录的输入。 3、浏览功能:完成对全部职工信息的显示。 4、查找功能:完成按职工的职工号查询职工的相关信息,并显示。 完成按职工的学历查询职工的相关信息,并显示。 完成按职工的电话号码查询职工的相关信息,并显示。 5、删除功能:通过输入职工的姓名完成对该名职工的信息进行删除。 6、添加功能:完成添加新职工的信息的任务。 7、修改功能:通过输入职工的姓名完成对该名职工的信息进行修改。 8、退出职工信息管理系统。 1.3开发环境 宏碁4750g (英特尔i5-480m cpu ddr3 1333 2 内存 显卡 32位 旗舰版) 第二章 系统设计任务内容 2.1 设计内容 设计一个职工信息管理系统,使之能提供以下功能: 1、 应提供一个界面来调用各个功能,调用界面和各个功能的操作界面 应尽可能清晰美观! 2、输入功能:职工信息录入(职工信息用文件保存),可以一次完成若干 条记录的输入。 3、浏览功能:完成对全部职工信息的显示。 4、查找功能:按所提供的信息查找职工信息 1 5、删除功能:通过输入职工的姓名完成对该名职工的信息进行删除。 6、排序功能:按所提供的各种信息进行升降排序 7、修改功能:通过输入职工的姓名完成对该名职工的信息进行修改。 8、退出职工信息管理系统。 2.2 系统设计思想 在设计时考虑以下几个方面: (1)有高度的容错机制,不会因小的失误造成死循环。 (2)简洁 (3)错误报警机制可以提醒用户进行正确的操作。 (4)可选择性,在进行修改、 删除等操作时可按不同方式进行,方便用 户操作。 功能齐全,充分考虑到用户的实际需求。 (6)操作简单。因为使用者多为非计算机专业人员,所以该系统要求设计 的操作方便,易于维护。一个软件的好坏,关键在于产品便于维护。 2.3 程序流程图 菜单 开始 根据菜单输入 n 的值选择 程序 保存 是否继续进 行 ny y y 5 添加 职工 信息 6 修改 职工 信息 2 浏览 职工 信息 3 查询 职工 信息 4 删除 职工 信息 7 退出 1 录入 职工 信息 2 第3章 课程设计说明 3.1 程序调试 3.1.1菜单显示 菜单 开始 根据菜单输入 n 的值选择 程序 保存 结束 是否继续进 行 ny y y 5 添加 职工 信息 6 修改 职工 信息 2 浏览 职工 信息 3 查询 职工 信息 4 删除 职工 信息 7 退出 1 录入 职工 信息 3 3.1.3信息浏览 4 3.1.5信息删除 3.1.6信息查找 5 3.1.7信息排序 32 课程设计过程中遇到的问题 1.对一些知识掌握得不够熟练,在编写程序的过程中出现错误,经过查阅 书本以及询问老师、和同学们讨论后改正了错误。 2.编程的方法选择得不够好,程序不够精炼。类的封装性不够好。 3.考虑得不够周全,防错机制不够强,对一些错误操作不能够做出合理的 处理。 3.3 核心算法及说明 本程序运用c+编写,使用顺序表的数据结构来实现。 6 本程序中定义了一个结构体employee。其中在employee结构体中包含了职 工的基 本信息(工号、姓名、性别、年龄、学历、工资、地址、电话)。 程序还定义了几个功能函数(输入、删除 、添加、查找、修改、统计),这 七个函数是彼此相互独立的功能模块。 另外,为了防止工厂信息外泄,还增加了一个预置密码的功能。 3.4 程序的优缺点 1. 应用文件进行存储,方便简单易于实现。 2. 有良好的人机交互界面,各操作清晰明了,提示到位。 3. 输入错误不至于使系统崩溃,不符合要求的输入能进行返回或重新 进行所要的操作。 4. 在修改过程中,有很多选项进行选择,用户可根据自己的需要选择 某一项进行修改操作。 5. 本程序可自行退出,不至于强行退出程序。 6. 一个函数可被多个操作进行调用,代码利用率高,省去了一些多余 代码的编写。 缺点: 1.程序使用线性表进行存储,容量有限,不能进行大量的数据存储。 2.在查找功能函数中,只用了通过姓名来查找,由于职工可能存在重名 的问题,这就可能会导致查找时出现差错。 第四章用户使用说明 这是一个职工信息管理系统,具有录入、 输出、 删除、 查询、 修改、 保存、 载入 数据、 计算总支出信息等功能,建立一个含有工号、 性联系方式、 国籍、 工作量等 成员的类的变量。 查看输入的数据记录调试过程中,可按照有关提示进行相关操 作: 职工数据录入按“1”键; 浏览职工数据按“2”键; 修改职工数据按“3”键; 删除职工数据按“4”键; 查找职工数据按“5”键; 7 排序职工数据按“6”键; 保存职工数据按“7”键; 退出职工管理系统按“0”键; 第五章 课程设计心得 通过这次课程设计,增加了我对用 c+编程序的进一步了解,我也从中发现程序设计的 好处,它对我们数学的学习也有很大的帮助。 在学习编程的过程中也巩固了许多计算机应用 基础知识,对计算机的机体也有了一个较为详细的了解。 在具体操作中对这学期所学的c+ 的理论知识得到巩固加强,达到实训的目的,也发现自己的不足之处,为我们以后的学习 奠定了基础,同时体会到c+具有的语句简洁,使用灵活,执行效率高等特点。 发现上机操 作的重要作用,特别是对数组和循环有了深刻的理解。 通过实际操作,学会程序编程的基本 步骤、基本方法,开发了自己的逻辑思维能力,培养了分析问题、解决问题的能力。 由于本课题中的许多知识点都没有学过都要靠自己到课外的资料中去查找。 在用的时候难免出现这样那样的错误。 如开始设计出来的菜单不是预想的那样, 而是总个窗中出现混乱。也会遇到很多由于你的大意、粗心等造成的小错误,像 一些空格,分号等的遗漏或用错等。解决的这些问题的办法是调整。一个系统的 菜单和提示信息非常重要。 如果没有这些用户根本不知道怎么用你设计的这个系 统。在设计的调试过程中也无法顺利的完成调试工作。有了一个清晰简单的菜单 和一些提示信息这后,调试过程完成的非常顺利。 回顾起此次课程设计,至今我们仍感慨颇多,的确,从拿到题目到完成整个 编程,从理论到实践,在这些日子里,可以学到很多很多的东西,同时不仅可 以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。 通 过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是 远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论, 才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。 在设计 的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过 各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过 的知识理解得不够深刻,掌握得不够牢固,比如说结构体通过这次课程设 计之后,一定把以前所学过的知识本次课程设计结束了,对于我们的影响很大。 8 我们通过这次实践学到了许多知识。学到了设计一个简单的系统。要注意哪些方 面。也使我们知道自己哪些方面做得还不够。 但我们总结出了一点点的经验如下: 要对系统的功能和要求做出详细的分析,并合理分解任务。 把分解出来的子任务,做给一个相对独立的模块。 在设计一个模块之前,要简单构想一下总界面的显视情况。 针对构想出来的界面进行程序的编写。 附录(1):参考文献 1 谭浩强. c程序设计. 清华大学出版社.2008 2 谭浩强. c+面向对象程序设计. 清华大学出版社.2008 附录(2):程序清单 #include #include“string“ #include #define n 100/n 作为最大职工总数 int num=0;/用来计算职工数目 int count;/用来暂时记录当前操作第几个职工 int f=0;/f 作为开关 using namespace std; string p;/p 作为接收菜单选项的字符串 class worker public: worker() void menu();/显示菜单 void add();/职工信息录入 void show();/职工信息显示 void showworker();/显示职工信息在屏幕上 9 void search();/职工信息查找 void sort();/职工信息排序 void dele();/职工信息删除 void modify();/职工信息修改 void save();/职工信息以文件形式保存 worker() private: string num,name,sex,edu,address,tel; int age,salary; ; worker wn; int main() w0.menu(); return 0; void worker:menu()/主菜单函数实现 couti1; while(!(i1=0 switch(i1) case 1: add();break; case 2: showworker();break; case 3: modify();break; case 4: dele();break; case 5: search();break; case 6: sort();break; case 7: save();break; case 0: coutnum; for(i=0;iwi.num; ; coutwi.sex; coutwi.age; ; coutwi.salary; coutwi.address; coutwi.tel; wi.save(); couta; if(a=y) f=1; system(“cls“); w0.menu(); coutn; coutnum1; int j=0,k; int flag=1; while(flag) for(;jnum1; couti3; while(i38) 15 couti3; switch(i3) case 1: coutwk.num; ; coutwk.sex; ; coutwk.age; coutwk.salary; coutwk.address; coutwk.tel; coutp; while(1) if(p=“y“|p=“y“) menu(); else if(p=“n“|p=“n“) coutp; 18 void worker:search() if(numi4; while(i44) couti4; if(i4=1) string num2; coutnum2; int j=0,k; int flag=1; while(flag) for(;jname2; int j2=0,k2; int flag2=1; while(flag2) for(;j2salary2; int j3=0,k3; int flag3=1; while(flag3) for(;j3edu2; int j4=0,k4; int flag4=1; while(flag4) for(;j4i5; while(i56) couti5; if(i5=1) for(int i=0;iwj+1.num) string temp; temp=wj.num; wj.num=wj+1.num; wj+1.num=temp; coutwj+1.name) string temp; temp=; =wj+1.name; wj+1.name=temp; coutwj+1.salary) int temp; temp=wj.salary; wj.salary=wj+1.salary; wj+1.salary=temp; coutnum3; int j=0,k; int flag=1; while(flag) 29 for(;jnum3; coutp; while(1) if(p=“y“|p=“y“) coutp; void worker:save() if(numi1; while(!(i1=0 switch(i1) 33 case 1: add();break; case 2: showworker();break; case 3: modify();break; case 4: dele();break; case 5: search();break; case 6: sort();break; case 7: save();break; case 0: coutnum; for(i=0;iwi.num; ; coutwi.sex; coutwi.age; 35 ; coutwi.salary; coutwi.address; coutwi.tel; wi.save(); couta; if(a=y) f=1; system(“cls“); w0.menu(); coutn; coutnum1; int j=0,k; int flag=1; while(flag) for(;jnum1; couti3; while(i38) couti3; switch(i3) case 1: coutwk.num; 39 ; coutwk.sex; ; coutwk.age; coutwk.salary; coutwk.address; coutwk.tel; couti4; while(i44) couti4; if(i4=1) string num2; coutnum2; int j=0,k; int flag=1; while(flag) for(;jname2; int j2=0,k2; int flag2=1; while(flag2) for(;j2salary2; int j3=0,k3; int flag3=1; while(flag3) for(;j3edu2; int j4=0,k4; int flag4=1; while(flag4) 46 for(;j4i5; while(i56) couti5; if(i5=1) for(int i=0

温馨提示

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

评论

0/150

提交评论