欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    C语言-职工档案管理系统.docx

    • 资源ID:1876999       资源大小:237.06KB        全文页数:12页
    • 资源格式: DOCX        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言-职工档案管理系统.docx

    C语言程序设计课程设计报告设计题目:职工档案管理系统设计专 业: 电子信息科学与技术学 号: 3080422* 班 级: 2008级1班 姓 名: * 指导教师 : * 2009 年 春季 学期 C语言课程设计任务书4题目:职工档案管理系统设计功能:职工档案管理系统设计,每个职工是一条记录,包括编号,姓名,性别,出生年月,所在部门,职称,工资级别、电话等。系统可实现以下功能:1、输入功能:输入每一位职工记录,将其信息存入文件中。2、显示功能:完成全部职工记录的显示。3、查找功能:完成按编号或姓名查找职工的相关记录,并显示。分步实施:1、初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数。2、建立一个文件,将每位职工的信息写入文件中并能显示于屏幕上。3、完成上述查找(编号,姓名,性别等)、修改等功能。4、进一步要求,修改记录设置密码操作。要求:1、用C语言实现程序设计;2、利用结构体数组实现职工信息的数据结构设计;3、系统的各个功能模块要求用函数的形式实现;4、界面友好(良好的人机交互),程序加必要的注释。课程设计实验报告要求:1、预习报告:题目、课程设计任务、数据结构、程序的总体设计(算法)、模块划分 。2、实验总结报告:流程图、主要源程序代码(需打印)、测试情况及调试中问题与解决方案、小结等。总评成绩:指导教师:附件:主要源程序代码(职工档案管理系统)char sex;/性别f为女m为男#include <stdio.h>#include <string.h>#include <stdlib.h>#include <conio.h>#define N 100 typedef struct employee/职工基本情况 char num6;/编号 char name8;/姓名 char birth8;/出生年月 char workplace10;/工作部门 char salarylevel8;/工资级别 char position8;/职称 char tel16;/电话 emN; /*主要函数*/void input();/输入职工信息void display();/显示职工信息void passWord();/设置密码void save();/保存职工信息void change();/修改职工信息/*查找函数*/void search();void searchByname();/按姓名查找void searchBynum();/按编号查找int total=0;/定义total来记数记录数int i=0; void main() int choice; do printf(" n");/系统欢迎界面 printf(" 欢迎进入职工管理系统 n"); printf(" n"); printf("Coyote 2009年6月 n"); printf(" n"); printf(" 请您选择操作类型: n"); printf("= n"); printf(" 1.输入职工信息 n");/用户选择 printf(" 2.显示职工信息 n"); printf(" 3.查找职工信息 n"); printf(" 4.修改职工信息 n"); printf(" 0.退出系统 n"); printf("= n"); scanf("%d",&choice); switch(choice) case 1:input();break; case 2:display();break; case 3:search();break; case 4:change();break; case 0: printf("谢谢使用!再见! "); exit(0);/退出系统default:printf("输入有错误请重新输入: "); return; while(1);/当为真值时执行do循环 void input()char j='0'/初始化j值为空dototal+;i+;printf("第%d个职工:n",i);printf("请您输入编号: ");/输入编号scanf("%s",emi.num);printf("请您输入姓名: ");/输入姓名scanf("%s",emi.name);printf("请您输入性别以(m男f女): ");/输入性别getchar();scanf("%c",&emi.sex);printf("请您输入出生年月(格式如:1990.03): ");/输入出生年月scanf("%s",emi.birth);printf("请您输入工作部门: ");/输入工作部门scanf("%s",emi.workplace);printf("请您输入职位: ");/输入职位scanf("%s",emi.position);printf("请您输入工资级别: ");/输入工资级别scanf("%s",emi.salarylevel);printf("请您输入联系电话: ");/输入联系电话scanf("%s",emi.tel);printf("是否继续输入?(y/n):");getchar();j=getchar();while(j!='y'&&j!='n')printf("输入不合法!n是否继续输入?(y/n):");getchar();j=getchar();while(j='y');save();/保存职工记录printf("输入完毕,请按任意键返回n "); getch();/conio库函数里的,结收键盘输入任意 return; void save() FILE *fp; int i=0; if(fp=fopen("employee.txt","ab")=NULL)printf("cannot open filen");return;for(i=1;i<=total;i+) if(fwrite(&emi,sizeof(struct employee),1,fp)!=1)printf("file write errorn"); fclose(fp);void display()/显示所有职工信息 FILE *fp; int i; if(fp=fopen("employee.txt","rb")=NULL) printf("文件打开失败或未创建文件!n"); return; printf("所有职工信息如下: n");/输出所有职工信息 printf("n=n");printf("编号 姓 名 性别 出生年月 所在部门 职 称 工资级别 联系电话n");printf("=n"); for(i=1;fread(&emi,sizeof(struct employee),1,fp)!=0;i+)/读完所有数据printf("%-6s%8s%6c%12s%10s%8s%8s%18sn",emi.num,emi.name,emi.sex,emi.birth,emi.workplace,emi.position,emi.salarylevel,emi.tel); printf("完毕,请按任意键返回n "); getch(); fclose(fp); return;void search()int choice; printf("请您选择查找方式:n"); printf("1.按编号查找n 2.按姓名查找 n"); scanf("%d",&choice); switch(choice) case 1:searchBynum();break; case 2:searchByname();break; default:printf("输入有误,请重输入:n"); void searchBynum()FILE *fp; int i;char numb6;if(fp=fopen("employee.txt","r")=NULL) printf("不能够打开这个文件,请按任意键返回"); return; printf("请您输入要查找的人的编号: "); scanf("%s",numb); for(i=0;i<N;i+)/在所有信息中查找符合要求的职工信息 if(strcmp(emi.num,numb)=0) /找到并显示该职工记录 printf("以下是您要查询的人的信息:n "); printf("n=n");printf("编号 姓 名 性别 出生年月 所在部门 职 称 工资级别 联系电话n"); printf("=n");printf("%-6s%8s%6c%12s%10s%8s%8s%18sn",emi.num,emi.name,emi.se x,emi.birth,emi.workplace,emi.position,emi.salarylevel,emi.tel); printf("查找完毕,请按任意键返回n "); getch(); fclose(fp); return; printf("没有这样的人,请按任意键返回n"); getch(); fclose(fp); return;void searchByname() FILE *fp; int i=0; char nam8; if(fp=fopen("employee.txt","rb")=NULL) printf("不能够打开这个文件,请按任意键返回n"); return; printf("请您输入要查找的人的姓名: "); scanf("%s",nam); for(i=0;i<N;i+) if(strcmp(emi.name,nam)=0) /找到并显示该职工记录 printf("以下是您要查询的人的信息:n "); printf("n=n");printf("编号 姓 名 性别 出生年月 所在部门 职 称 工资级别 联系电话n"); printf("=n"); printf("%-6s%8s%6c%12s%10s%8s%8s%18sn",emi.num,emi.name,emi.sex,emi.birth, emi.workplace,emi.position,emi.salarylevel,emi.tel); fclose(fp); printf("查找完毕,请按任意键返回n "); getch(); return; printf("没有这样的人,请按任意键返回n "); getch(); fclose(fp); return; void passWord() char passWord8="123456"/起始密码 char s8; int flag=0; int n=3;/密码输入次数 do scanf("%s",s); if(strcmp(passWord,s)=0)/若密码正确 printf("密码正确,祝您操作愉快!n "); flag=1; break; else printf("密码错误,您还有%d次机会: ",n-1); n-;/次数记数 while(n>0); if(flag!=1) printf("您的输入次数已到!再见!n "); main();/返回主函数(主菜单) void change() FILE *fp; int i; char newnum6;/新编号 char newname8;/新名字 char newsex;/新性别 char newbirth8;/新出生年月 char newworkplace10;/新工作部门 char newposition8;/新职称 char newsalarylevel8;/新工资水平 char newtel16;/新电话号码 char nam8; int choice; printf("请您输入密码:"); passWord();/调用密码函数 printf("请您输入要修改的人的姓名: "); scanf("%s",&nam); if(fp=fopen("employee.txt","w+")=NULL) printf("不能够打开这个文件 "); return; for(i=1;i<=N;i+) if(strcmp(nam,emi.name)=0) printf("这是您要修改的人的信息:n"); printf("n= =n"); printf("编号 姓 名 性别 出生年月 所在部门 职 称 工资级别 联系电话n"); printf("=n"); printf("%-6s%8s%6c%12s%10s%8s%8s%18sn",emi.num,emi.name,emi.sex,e mi.birth,emi.workplace,emi.position,emi.salarylevel,emi.tel); printf("-n "); printf("请您选择要修改的部分: n"); printf("=n "); printf("1.修改编号n "); printf("2.修改姓名n "); printf("3.修改性别n "); printf("4.修改出生年月n "); printf("5.修改所在部门n "); printf("6.修改职位n "); printf("7.修改工资级别n "); printf("8.修改联系电话n "); printf("0.返回主菜单n "); printf("=n "); scanf("%d",&choice); switch(choice) case 1: printf("请您输入新的编号: "); scanf("%s",newnum); strcpy(emi.num,newnum); break; case 2: printf("请您输入新的姓名: "); scanf("%s",newname); strcpy(emi.name,newname); break; case 3: printf("请您输入新的性别: "); getchar(); scanf("%c",&newsex); emi.sex=newsex; break; case 4: printf("请您输入新的出生年月: "); scanf("%s",newbirth); strcpy(emi.birth,newbirth); break; case 5: printf("请您输入新的工作部门: "); scanf("%s",newworkplace); strcpy(emi.workplace,newworkplace); break; case 6:printf("请您输入新的职位: "); scanf("%s",newposition); strcpy(emi.position,newposition); break; case 7:printf("请您输入新的工资级别: "); scanf("%s",newsalarylevel); strcpy(emi.salarylevel,newsalarylevel); break; case 8:printf("请您输入新的联系电话: "); scanf("%s",newtel); strcpy(emi.tel,newtel); break; case 0: printf("返回主菜单 "); main();/返回 default :printf("输入有错误!请重新输入!");return; printf("n=n");printf("编号 姓 名 性别 出生年月 所在部门 职 称 工资级别 联系电话n"); printf("=n");printf("%-6s%8s%6c%12s%10s%8s%8s%18sn",emi.num,emi.name,emi.sex,e mi.birth,emi.workplace,emi.position,emi.salarylevel,emi.tel); save();/保存修改信息 break; else if(i=N) printf("没有这个职工,为了安全,请再次输入密码!n"); change(); printf("n=n"); printf("1.继续修改n2.返回主菜单n"); printf("=n"); printf("n请您选择:"); scanf("%d",&choice); switch(choice) case 1:change();break; case 2:main();break; default:printf("输入不合法!返回n");main();

    注意事项

    本文(C语言-职工档案管理系统.docx)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开