职工信息管理系统_第1页
职工信息管理系统_第2页
职工信息管理系统_第3页
职工信息管理系统_第4页
职工信息管理系统_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、 赣 南 师 范 学 院物理与电子信息学院课程设计C语言程序课程设计题 目:职工信息管理系统作 者: 肖骏浩 学 号: 070802046 完成日期: C语言程序课程设计任务书题 目职工信息管理系统设计目的设计一个能够管理职工信息的系统,要求实现以下功能1 职工信息的插入2 浏览所有职工信息3 按职工号或学历查询某职工信息4 删除某一职工信息设计进度安排第14天:选题、查阅资料; 第 5 天:确定设计方案; 第69天:方案的实现、调试; 第 10 天:撰写课程设计报告初稿并修改;教师审核签名目录课程设计任务书2摘 要4关键词4一、 设计任务和要求5二、课程设计目的及意义5三、总体设计63.1系

2、统总体框图.6四、详细设计64.1系统主函数.64.2插入函数.74.3显示函数.74.4查询函数.74.5删除函数.7五、调试结果75.1开始界面.75.2插入职工信息.85.3显示所有职工信息.85.4查询职工信息.85.5删除职工信息.9六、设计心得体会9七、参考文献.10附录I 源程序代码11摘要当代社会,随着社会的发展,科技的进步,在各企业、部门中,对职工信息的管理显得尤其重要。本设计基于C语言,粗略的实现了对职工信息的管理,主要实现了以下功能:对职工信息进行输入、查询、显示、删除关键词:C语言程序设计 职工信息管理 输入 查询 显示 删除一 设计任务与要求职工信息包括职工号、姓名、

3、性别、年龄、学历、工资、住址、 等(职工号不重复)。试设计一职工信息管理系统,使之能提供以下功能:1、系统以菜单方式工作2、职工信息录入功能3、职工信息浏览功能4、职工信息查询功能查询方式 按学历查询等按职工号查询等5、职工信息删除功能二 设计目的及意义1、通过本项课程设计,可以培养独立思考、思考问题以及解决问题的能力,巩固C语言程序设计课程学习的内容,掌握工程软件设计的基本方法,强化编程能力,达到理论与实际相结合2、通过C语言课程设计,了解高级程序设计语言的结构,掌握基本的程序设计过程和技巧,具备初步的高级语言程序设计能力。为后续课程的学习打下基础,提高动手能力,使自身综合素质得以提高三 总

4、体设计3.1 系统总体框图四 详细设计4.1系统主函数该函数实现的是一个供操作者使用的界面功能,即输入某个数字跳转到相应的功能对职工信息进行管理(1插入 2显示 3查询 4删除);若输入其他数字则显示“输入有错,请重新输入”。4.2插入函数对职工的信息进行输入 ,按以下格式进行:职工号 姓名 性别 年龄 学历 工资 地址 ,输入完之后按enter键即可。若输入职工号重复,则提示重新输入。4.3显示函数将所有职工的信息全部呈现在眼前,对所有信息一目了然,按以下格式显示:职工号 姓名 性别 年龄 学历 工资 地址 。4.4查询函数查询某一职工的信息,按以下方式进行:1职工号 2学历4.5删除函数删

5、除一无效的职工信息,便于职工的动态管理五 调试结果5.1开始界面5.2插入职工信息5.3显示所有职工信息5.4查询职工信息5.5删除职工信息六 设计心得体会经过几天的不懈努力,本次设计终于完成,设计开始碰到了许多问题:逻辑思维不清晰,导致系统部分功能不能实现;对结构体运用不熟练;对文件指针概念不清晰等等。通过看书,这些问题得到了解决,加深了对理论的了解,转化成了自己所学到的知识。虽然本次设计完成了,但也有一些不足之处:程序的稳定性不好,有时会出现一些乱码;或有时输入一些字符时,系统屏幕总显示输入有错,改了很久,都找不出错误所在,实力有限,请见谅!七 参考文献1.周坚 单片机C语言轻松入门 北京

6、航空航天出版社2.谭浩强 C语言程序设计(第三版) 清华大学出版社3. 武 装 、张碧霞Visual C+ 6.0 项目开发指南 国防工业出版社4. 王强如C语言绘图与计算机仿真技术北京航空航天大学5.科钦 C语言程序设计 电子工业出版社6.徐君毅 C语言程序设计基础 复旦大学出版社7.李成付 C语言程序设计基础 科学出版社8.郝玉洁 C语言程序设计 机械工业出版社附 程序清单用C语言设计一个职工信息管理系统,并实现下面功能。一、系统程序要求1、设计一个职工信息管理系统2、要求包括职工信息包括职工号、姓名、性别、年龄、学历、工资、 住 址、 (职工号不重复)3、本系统功能描述: 职工信息录入功

7、能(职工信息用文本保存); 职工信息浏览功能; 查询功能(至少一种查询方式): 按工资查询, 按学历查询4、职工信息删除、修改功能(这两个功能任选)。#include<stdio.h> struct staff char name8; char num10; char sex10; char age10; char record10; char position15; char wanges10; char tel15; char addr50; worker; /*定义一个结构体*/char filename20; /*文件名*/ FILE *fp;void creat(); /

8、*定义一个创建函数*/ void output(); /*定义一个输出信息的函数*/ void search(); /*定义一个查询的函数*/ void append(); /*定义一个添加函数*/ void modify(); /*定义一个修改函数*/ void delete(); /*定义一个删除函数*/void main() /*主函数*/ int m;creat(); /*先调用creat函数*/while(1) printf("nn添加,请按1"); printf("n查找,请按2"); printf("n修改,请按3");

9、 printf("n删除,请按4"); printf("n输出,请按5"); printf("n退出,请按0n"); /*输出提示信息*/ scanf("%d",&m); if(m>=0&&m<=5) switch(m) case 1: append(); break; case 2: search(); break; case 3: modify(); break; case 4: delete(); break; case 5: output(); break; case 0

10、: exit(); printf("nn操作完毕,请再次选择!"); else printf("nn选择错误,请再次选择!"); void creat() /*被调用的creat函数*/ struct staff one;printf(" 职工信息管理系统");printf(" -");printf("n请输入保存员工信息的文件名:"); scanf("%s",filename); /*创建一个文件的名字*/ if(fp=fopen(filename,"w"

11、;)=NULL) /*打开文件,实现向文件输入数据*/ printf("n不能建立!"); exit(); fprintf(fp,"%-10s%-8s%-5s%-5s%-10s%-8s%-8s%-10s%-15sn","姓名","工号","性别","年龄","学历","职位","工资"," 号码","住址"); printf("n请输入职工信息(以0结束)n"

12、;); printf("姓名:n"); scanf("%s",); while(strcmp(,"0") printf("工号:n"); scanf("%s",one.num); printf("性别:n"); scanf("%s",one.sex); printf("年龄:n"); scanf("%s",one.age); printf("学历:n"); scan

13、f("%s",one.record); printf("职位:n"); scanf("%s",one.position); printf("工资:n"); scanf("%s",one.wanges); printf(" :n"); scanf("%s",one.tel); printf("住址:n"); scanf("%s",one.addr); /*输出职工的相关信息*/ fprintf(fp,"%-1

14、0s%-8s%-5s%-5s%-10s%-8s%-8s%-10s%-15sn",,one.num,one.sex,one.age,one.record,one.position,one.wanges,one.tel,one.addr); scanf("%s",); fclose(fp); /*关闭文件*/ void output() /*输出函数*/ struct staff one;if(fp=fopen(filename,"r")=NULL) /*打开文件*/ printf("n不能打开该文件!&q

15、uot;); exit(); printf("nn%20sn","职工信息管理系统");/*向文件输入数据*/ while(!feof(fp) fscanf(fp,"%s%s%s%s%s%s%s%s%sn",,one.num,one.sex,one.age,one.record,one.position,one.wanges,one.tel,one.addr); printf("%-10s%-8s%-5s%-5s%-10s%-8s%-8s%-10s%-15sn",,one.num,o

16、ne.sex,one.age,one.record,one.position,one.wanges,one.tel,one.addr); fclose(fp);/*关闭文件*/ void append() /*添加函数*/ struct staff one;if(fp=fopen(filename,"a")=NULL) /*打开文件*/ printf("n不能打开该文件!"); exit(); printf("n请输入添加职工信息(姓名、工号、性别、年龄、学历、职位、工资、 、地址)n");/*向文件中输入数据*/ scanf(&qu

17、ot;%s%s%s%s%s%s%s%s%s",,one.num,one.sex,one.age,one.record,one.position,one.wanges,one.tel,one.addr); fprintf(fp,"%-10s%-8s%-5s%-5s%-10s%-8s%-8s%-10s%-15sn",,one.num,one.sex,one.age,one.record,one.position,one.wanges,one.tel,one.addr);fclose(fp); /*关闭文件*/ void search()

18、 /*查询函数*/ int k=0; char namekey8; struct staff one;printf("n请输入您要查找的职工姓名:"); scanf("%s",namekey);if(fp=fopen(filename,"rb")=NULL) /*打开文件*/ printf("n不能打开文件!"); exit(); while(!feof(fp) fscanf(fp,"%s%s%s%s%s%s%s%s%sn",,one.num,one.sex,one.age,on

19、e.record,one.position,one.wanges,one.tel,one.addr); if(!strcmp(namekey,) printf("nn已查到,记录为:"); printf("n%-10s%-8s%-5s%-5s%-10s%-8s%-8s%-10s%-15sn",,one.num,one.sex,one.age,one.record,one.position,one.wanges,one.tel,one.addr); k=1; if(!k) printf("nn对不起,查无此人!。&

20、quot;); fclose(fp); void modify() /*修改函数*/ int m,k=0; long offset; char namekey8; struct staff one;printf("n请输入您要修改的职工的姓名:"); scanf("%s",namekey);if(fp=fopen(filename,"r+")=NULL) /*打开文件*/ printf("n不能打开该文件!"); exit(); while(!feof(fp) offset=ftell(fp); /*查找信息*/

21、fscanf(fp,"%s%s%s%s%s%s%s%s%sn",,one.num,one.sex,one.age,one.record,one.position,one.wanges,one.tel,one.addr); if(!strcmp(namekey,) k=1; break; if(k) printf("n已查到,记录为:"); printf("n%-10s%-8s%-5s%-5s%-10s%-8s%-8s%-10s%-15sn",,one.num,one.sex,one.ag

22、e,one.record,one.position,one.wanges,one.tel,one.addr); printf("n请输入信息(按照姓名、工号、性别、年龄、学历、职位、工资、 、地址的顺序输入):"); scanf("%s%s%s%s%s%s%s%s%s",,one.num,one.sex,one.age,one.record,one.position,one.wanges,one.tel,one.addr); fseek(fp,offset,SEEK_SET); printf("%ld",ftell(f

23、p); fprintf(fp,"%-10s%-8s%-5s%-5s%-10s%-8s%-8s%-10s%-15sn",,one.num,one.sex,one.age,one.record,one.position,one.wanges,one.tel,one.addr); else printf("n对不起,查无此人,无法进行修改。"); fclose(fp); /*文件关闭*/ void delete() /*删除函数*/ int m,k=0,flag; long offset1,offset2; char namekey8, valid4; struct staff one;printf("n请输入您要删除的职工姓名:"); scanf("%s",namekey); if(fp=fopen(filename,"r+")=NULL) /*打开文件*/ printf("n不能打开该文件!"); exit(); while(!feof(fp) offset1=ftell(fp);

温馨提示

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

评论

0/150

提交评论