免费预览已结束,剩余16页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数学与计算机学院 课程设计说明书 课 程 名 称:计算机科学与技术程序设计语言-课程设计 课 程 代 码: 题 目: 职工信息管理系统 年级/专业/班: 学 生 姓 名: 学 号: 开 始 时 间: 年 月 日 完 成 时 间: 年 月 日 课程设计成绩: 学习态度及平 时成绩(30) 技术水平与实际 能力(20) 创新(5)说明书撰写质量(45) 总 分 (100) 指导教师签名: 年 月 日 职工信息管理系统 目 录 1 1 引引 言言 1 1 1.1 问题的提出 .1 1.2 国内外研究的现状 1 1.3 任务与分析 1 2 2 程序的主要功能程序的主要功能 2 2 2.1 添加功能2 2.2 删除功能2 2.3 按年龄排序全部职工信息.2 2.4 显示功能2 2.5 按姓名查找功能2 2.6 按学历查找功能2 3 3 程序运行平台程序运行平台 3 3 4 4 总体设计总体设计 4 4 5 5 模块分析模块分析 5 5 5.1 添加模块.5 5.2 显示模块.5 5.3 按姓名查找模块.5 5.4 按学历查找模块.5 5.5 删除模块.5 5.6 按年龄排序全部职工信息5 6 6 系统测试系统测试 6 6 7 7 结论结论 7 7 致致 谢谢 8 8 参考文献参考文献 9 9 职工信息管理系统 摘摘 要要 随着计算机的普及,小型系统的编写有了很快的发展。本系统分析了任务书 中的要求,利用 c 语言编程实现了职工信息管理系统,该系统具有人员信息的添 加,删除,查找,修改和显示功能。 关键词:关键词:职工信息管理系统;计算机; 添加;删除;查找;修改。 -1- 职工信息管理系统 1 引引 言言 1.1 问题的提出问题的提出 在现代化的企业管理中,人事管理系统有着十分重要的作用,然而,用大型软件 系统来于小型的企事业单位,不啻于“杀鸡用牛刀” ,因此小型的的软件对于这种单位 自然有十分重要作用。小型企业出与这种目的制作了这个人事管理系统。 1.2 国内外研究的现状国内外研究的现状 现今国内外大多注意在大型人事管理系统的开发,在小型人事管理系统却少有开现今国内外大多注意在大型人事管理系统的开发,在小型人事管理系统却少有开 发,但并非所有的公司都实用与大型系统,所以小型系统有开发的必要。发,但并非所有的公司都实用与大型系统,所以小型系统有开发的必要。 1.3 任务与分析任务与分析 本课题主要的目的是编程实现职工信息管理系统。 系统以菜单方式工作: 1.职工信息(包括姓名、编号、性别、年龄、学历、职称、工种等)浏览功能 输出 2.职工信息删除、修改功能(任选项); 3.职工信息录入功能(职工信息用文件保存)输入; 4.查询和排序功能:(至少一种查询方式):按姓名查询和按学历查询等。 (要求职 工信息存入文件) -2- 职工信息管理系统 2 程序的主要功能 2.1 添加功能添加功能 添加一个职工的基本信息,包括姓名、编号、性别、年龄、学历、职称、工种。 2.2 删除功能删除功能 能够对一个职工的信息进行删除。 (按姓名进行删除) 2.3 排序功能排序功能 能够对于全部职员的信息进行年龄排序。 2.4 显示功能显示功能 显示所有职工的信息包括姓名、编号、性别、年龄、学历、职称、工种。 2.5 按姓名查询功能按姓名查询功能 根据你键入的职工姓名,显示其详细信息! 2.6 按学历查询功能按学历查询功能 根据你键入的职工学历,显示其详细信息! -3- 职工信息管理系统 3 程序运行平台 vc+6.0。 具体操作如下:新建 c 语言源程序工程,添加相应的源文件至此源程序,再编译 发现是否有错误,有则改之,无则链接成可执行文件,执行次可执行文件。 -4- 职工信息管理系统 4 总体设计 图 4.1 系统总体框架图 主 函 数 添 加 信 息 删 除 信 息 排 序 信 息 姓 名 查 询 显 示 信 息 学 历 查 询 -5- 职工信息管理系统 5 模块分析 5.15.1 添加模块添加模块 系统将提示用户输入新添加的职员的信息,插入在文件中。 void input() /*信息录入函数*/ file *fp; /*定义文件*/ worker xs; if(fp=fopen(“worker.txt“,“ab“)=null) printf(“cant open file!n“);exit(0); /*打开文件,如果不能打开,就关 闭所有文件*/ printf(“n 录入格式 姓名 编号 性别 年龄 学历 职称 工种。当输入姓名为 end 结束录入n“); while(1) scanf(“%s“,); if(strcmp(,“end“)=0) break; /*如果输入的是 end,则停止输入 */ scanf(“%d%s%d%s%s%s“, fwrite( /*将信息写入文件*/ fclose(fp); /*关闭文件*/ 5.25.2 显示模块显示模块 显示模块将输出所有职员的主要资料 。 -6- 职工信息管理系统 void print() /*职工信息浏览函数*/ file *fp; worker s; /*定义结构体变量*/ system(“cls“); /*清屏*/ if(fp=fopen(“worker.txt“,“rb“)=null) printf(“cant open file!n“);exit(0); printf(“n%10s %5s %2s %2s %5s %5s %5sn“,“姓名“,“编号“,“性别“,“年龄“,“ 学历“,“职称“,“工种“); while(!feof(fp) fread(/*从文件中读取职工信息*/ if(feof(fp) break;/*判断是否文件尾*/ printf(“%10s %5d %5s %5d %5s %5s %5sn“,,s.bianhao,s.sex,s.nianling,s.xueli,s.zhicheng,s.gongzhong); fclose(fp); /*关闭文件*/ getch(); /*停止运行,便于观察结果*/ 5.35.3 按学历查找模块按学历查找模块 首先由用户输入要修改的职员的学历,然后系统用查找函数查找,然后系统就调 用输出函数,输出所查找的职员资料。 void seekxueli() /*学历查找函数*/ -7- 职工信息管理系统 worker xsn;/*定义一个结构体一维数组*/ file *fp; char xueli10; int i,k; system(“cls“); printf(“n 请输入要查找的学历: “); scanf(“%s“,xueli); i=0; if(fp=fopen(“worker.txt“,“r“)=null) /*为输入打开一个已存在的文本文件 */ printf(“cant open file!n“);exit(0); while(!feof(fp) fread( /*从文件中读取职工信息*/ if(feof(fp) break;/*判断是否文件尾*/ if(strcmp(xsi.xueli,xueli)=0)/*如果数组中有和输入相同的学历,则找到 它在数组中的位置,并输出*/ k=i; printf(“n%10s %5s %2s %2s %5s %5s %5sn“,“姓名“,“编号“,“性别“,“年龄“,“ 学历“,“职称“,“工种“); printf(“%10s %5d %5s %5d %5s %5s %5sn“,,xsk.bianhao,xsk.sex,xsk.nianling,xsk.xueli,xsk. zhicheng,xsk.gongzhong); -8- 职工信息管理系统 getch(); 5.45.4 按姓名查找模块按姓名查找模块 首先由用户输入要查找的职员姓名,然后系统用查找函数查找,然后系统就调用 输出函数,输出所查找的职员资料。 void seekname() /*姓名查找函数*/ worker xsn; /*定义一个结构体一维数组*/ file *fp; char name10; int i,k; system(“cls“); printf(“n 请输入要查找的职工姓名: “); scanf(“%s“,name); i=0; if(fp=fopen(“worker.txt“,“r“)=null) /*为输入打开一个已存在的文本文 件*/ printf(“cant open file!n“);exit(0); while(!feof(fp) fread( /*从文件中读取职工信息*/ if(feof(fp) break;/*判断是否文件尾*/ if(strcmp(,name)=0) k=i;/*如果数组中有和输入相同的名字,则 找到它在数组中的位置*/ printf(“n%10s %5s %2s %2s %5s %5s %5sn“,“姓名“,“编号“,“性别“,“年龄“,“ 学历“,“职称“,“工种“); -9- 职工信息管理系统 printf(“%10s %5d %5s %5d %5s %5s %5sn“,,xsk.bianhao,xsk.sex,xsk.nianling,xsk.xueli,xsk. zhicheng,xsk.gongzhong); getch(); /*停止运行,便于观察结果*/ 5.55.5 删除模块删除模块 首先由用户输入要删除的单个职员姓名,然后调用删除函数,删除该名职员的资 料,并输出余下的职工信息。 void dele() /*删除函数*/ worker xsn; /*定义一个结构体一维数组*/ file *fp; /*定义文件*/ char name10; int i,j,k=0; system(“cls“); printf(“n 请输入要删除的职工姓名: “); scanf(“%s“,name); i=0; if(fp=fopen(“worker.txt“,“a+“)=null) /*为读写打开一个文本文件*/ printf(“cant open file!n“);exit(0); while(!feof(fp) fread( /*从文件中读取职工信息*/ if(feof(fp) break; if(strcmp(,name)=0) k=i; /*如果数组中有和输入相同的名字, 则准备执行删除*/ i+; -10- 职工信息管理系统 fclose(fp); /*关闭文件*/ /以下是删除后职工信息 j=i; if(k=0) if(fp=fopen(“worker.txt“,“w+“)=null) /*为读写建立一个新的文本文件 */ printf(“cant open file!n“);exit(0); for(i=0;ixsj+1.nianling) x=xsj;xsj=xsj+1;xsj+1=x; /*冒泡法排序*/ printf(“n%10s %5s %2s %2s %5s %5s %5sn“,“姓名“,“编号“,“性别“,“年龄“,“ 学历“,“职称“,“工种“); for(i=0;i=k-1;i+) printf(“%10s %5d %5s %5d %5s %5s %5sn“,,xsi.bianhao,xsi.sex,xsi.nianling,xsi.xueli,xsi. zhicheng,xsi.gongzhong); getch(); /*停止运行,便于观察结果*/ -12- 职工信息管理系统 6 系统测试 首先进入 vc+6.0,打开工程 person.dsw,然后进入源程序,接着选择 build 下 的 execute person.exe 即可,也可以不打开工程,直接双击 person 文件夹下的 debug 或 release 子文件夹下的 person.exe 文件即可运行程序。 -13- 职工信息管理系统 6.16.1 职工信息录入职工信息录入 6.26.2 职工信息浏览职工信息浏览 6.36.3 职工信息删除。职工信息删除。 删除前信息 删除人 删除后信息 6.46.4 按姓名查询按姓名查询 当输入为林雨时 -14- 职工信息管理系统 6.56.5 按学历查询按学历查询 6.66.6 按年龄从小到大排序按年龄从小到大排序 年龄从 16-23-69,从小到大。 -15- 职工信息管理系统 7 结论 7.17.1 总结总结 经过不到一个星期的 c 语言课程设计,我对 c 语言有了更进一步的认识和了解, 从刚开始不知从何下笔到现在的漂亮运行,我付出大量的时间。从而也使我明白要学 好 c 语言重在实践,要通过不断的上机操作,并且练习自主设计程序才能更好的掌握 它。以前上课感觉自己学会了很多 ,但到真正用的时候才发现没学的还有好多好多, 虽然课堂上看似学会了,可到实际操作时问题多多。通过这次课程设计把所学的东西 用在了实践上,设计出来一些有用的东西,感觉很有成就感,虽然在设计的过程中遇 到了很多困难,比如对结构体 strcmp 的定义及使用,折半查找法的使用,主函数 menu 对浏览,录入等子函数的调用等等的,但最终都被我解决了,从而也加强了解决问题 的能力。 课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实 践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展 的日新日异,软件开发已经成为当今计算机应用中空前活跃的领域, 在生活中可以说 得是无处不在。因此作为二十一世纪的大学来说掌握程序开发开发技术是十分重要的。 回顾起此次 c 语言课程设计,至今我仍感慨颇多,的确,从模块单独设计到整体 调用,从理论到实践,在整整一个星期的日子里,可以说是苦多于甜,但是可以学到 很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本 上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的, 只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得 出结论,才能真正对所学知识得到应用,从而提高自己的实际动手能力和独立思考的 能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会 遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过 的知识理解得不够深刻,掌握得不够牢固,比如说
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 海东消防培训题库及答案
- 2025年飞行员招聘面试参考题库及答案
- 2025年认证咨询师招聘面试题库及参考答案
- 2025年作业分析师招聘面试题库及参考答案
- 2025年驾驶员招聘面试题库及参考答案
- 2025年若干产品专员招聘面试题库及参考答案
- 2025年母婴产品销售专员招聘面试参考题库及答案
- 2025年医疗行业项目经理招聘面试题库及参考答案
- 2025年营销副总裁招聘面试参考题库及答案
- 2025年基本面分析师招聘面试参考题库及答案
- 2025中国文化创意产业发展现状及市场前景研究
- 电机轴的生产流程
- 湖南省长沙市一中教育集团2025-2026学年上学期八年级期中考试数学试卷
- 备考2025届中考数学中档及压轴题型模型方法技巧专题03:圆的综合训练(解析版)
- 十二指肠溃疡科普
- 喝酒出事故赔偿协议书
- 学前教育专业专升本2025年考点精讲测试试卷(含答案)
- 基于分类模型平均方法精准预测汽车售后客户流失:理论、实践与创新
- 2025年山西省公务员录用考试《行测》真题及答案
- 2025年淮北市安徽相润投资控股集团有限公司社会招聘19人考试参考题库及答案解析
- 冷库维护专业知识培训课件
评论
0/150
提交评论