




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实用文档中国地质大学课程设计报告书所属课程名称C 程序设计题 目职工信息治理系统院系班 级学 号学生姓名 指导教师辅导教师 中国地质大学2021年9月6日课程设计论文任务书工程学院专业052081班一、课程设计论文题目职工信息治理系统二、课程设计论文工作:自 2021 年08月28 日起至 2021 年09月_08_ 日止.三、课程设计论文的内容要求:1、设计内容:制作职工信息治理系统,职工信息包括职工号 ,姓名,性别,年龄,学 历,工资,住址, 等职工号不重复,并实现数据录入、数据删除和数 据浏览以及数据查询等一些功能.2、课程设计的要求:A. 系统以菜单方式工作B. 职工信息录入功能职工信
2、息用文件保存-输入C. 职工信息浏览功能-输出D. 杳询和排序功能:至少一种杳询方式-算法E. 按工资杳询F. 按学历查询等G. 职工信息删除,修改功能任选项2021年9月6日一、需求分析1. 能够对职工的根本情况进行输入、修改、增加以及删除和存盘2. 能够对职工信息的浏览.3. 能够实现对职工的查询.4. 能够对职工的根本工资情况进行设定.5. 能够将职工信息和根本工资信息以文档形式保存6. 程序能够以菜单形式出现1、概要分析职工信息治理系统设计职工信息包括职工号,姓名,性别,年龄,学历,工资,住址, 等职工号 不重复,试设计一职工信息治理系统,使之能提供以下功能:系统以菜单方式工作职工信息
3、录入功能职工信息用文件保存-输入职工信息浏览功能-输出查询和排序功能:至少一种查询方式-算法按工资查询按学历查询等职工信息删除,修改功能任选项F面是功能框架图:三、详细设计以及调试分析A.详细设计1, 创立了一个结构体 employee,它包含num(工号),name(姓 名),sex (性别),age (年龄),xueli (学历),wage(工资), addr (住址),tel ( )8个基类,即为员工的根本信息.2, 创立了主函数main (),用它调用子函数menu(),add (),del (),display (),In put (),load (),modify (),save
4、(),search (),searchnum (),search xueli ().通过主函数对子函数的调用实现程 序的各项功能.B.调试分析void mai n() menu();int n, flag;char a;Win32Con figurati on:DebugCompili ng.1.cg:1.c(55):errorC2143: syntaxerror :missing'before 'type'g:1.c(56):errorC2143: syntaxerror :missing'before 'type'g:1.c(61) : er
5、ror C2065: ' n' : un declared ide ntifierg:1.c(64): error C2065: 'flag' : undeclared identifierg:1.c(90) : error C2065: 'a' : un declared ide ntifierError executi ng cl.exe.1.obj - 5 error(s), 0 warni ng(s)开始由于在主函数的调用过程中把子函数的调用放在了变量的 定义之前,导致程序无法运行,后来改正错误,程序可以正常 运行.另外在程序中还出现各种
6、小错误,这里不一一列举.通 过调试我发现调试是一个漫长而枯燥的过程,很锻炼人的耐心.实用文档四、程序使用指南1翻开程序出现菜单项选择项i:Debugl.t?耳日庶"官甲 xjocxjocxiocxaootiotx-厶浏览职工信息4.删際职工信息修改职工信息mm 欢送使用查询系统 mtn录入职工信息3维询职工5 増加职工信KWWM貝 貫貫 NW貝轉 *畀射使 弔请选择你需要操作的步骤1? =2,选择录入职工信息,按提示录入-男兀f职工号* 20038097请输入需要仓健信息的职工人数<1"100> =输I职工信息圭选择你需要操乍的歩骤=3.-! x通过选项依次实现
7、对职工信息的浏览,查询,删除,增加和修改号1A认入认入入认 职注為请土帖请注冃主冃圭一2 4 6=口圭 口亠 口忌自心白13 5 7IfftB口工李 科胸汉34 :上22本珊武12 * -U -0 f*姓性拿工住电'G:Debugl住入职 吉询职 増加职退出自心自心自4a|Qj>一口 JUj* 绘自i心i里 xxitxx jtxxxxx zxxxx 花浏坍职工信 衣删際职工信6 修改职工信Hit擡MiM舄餐賊図足臺賊弭図咸屛図曹射ifj 用 XJtJKKJflfJOtlOtlOtmOtWW请再次选择你需要操作的歩骤<1-7> =2浏览职工信息职工号姓名20007953
8、小李20008097小王2(1008744小胡是否继续进行3吓n> = 拽狗拼音半:性别 年龄学历F22本科m33硕士f25高中工资住址 3600武汉12345675000武汉23456782500武汉3456789F G:Debugl.eMe"JC| X*欢送使用查询系统*xxxxxmmx 耳B T 信息、治理 xxxxxxxxxxxxxxxxn- d 亠一一陰自口心 詹自口心$陰自B思1 录入职工3 舌询职工彳 増加职工彳7-退出T信息KM!:M谢'射 1J_ XKMSXXMSKXMSItiKXKIMMiltiMM!请再次选择你需要操作的歩骤<1?> :
9、kJ按职工号或学历查询职工信息I*Et_tS5Uu tZv* rrSf. 1援狗拼音半:S3恵自心自心 心 fe-'£Jp_lnJ 山工工“ 入询加出i 1-357-*JD12 4 6职职职 瀑改 測删修心息白心 口吉口亠=口1射 i射使用貝K試请选择你需要操作的涉骤<!-?> :删除职工信息原来的职工信息:职工号姓名性别年龄学历工资住址 20007953小李本科3000武汉123456720008097小王硕士5000武汉234567820368744高中2500武汉3456789请输入要删除的职工的姓名=incflG:Debug 1 .e we*Jo >
10、d7退出"-斗b貝职 r 貝 e 齐貝肌“ r 貝貝貝貝 r 貝貝尸i貝貝it i it i -n' | + i貝 r h 貝 r h 貝 r h 貝jr e 貝jr k 貝 h c请再次选择你需要操作的歩骤<!?> =添加职工信息原来的职工信息二职工号姓名 性别年龄小王学历硕士工资住址武汉 234567S小胡请输入想增加的职工数:2000S744高中25001武汉3456789¥Iff-主>1、ntxfcl? 息53 信09 工2 魔:§07=拴 笊工名生lln4,7.增加职工信息-iSii誤修改职丄I 口心匕詹息宾図耳扯据M担M耳只邑
11、且図年"渤吏用请再次选择你需要操作的步骤< 17 >:修改职工信息原来的职工信息:职工号姓名性别年龄学历工资住址 20008097小王33硕士5000武汉234567820008744小胡高中2500武汉345678920009537小李本科3600武汉1234567赭嘯入要修改的职工的姓名:狗扌井音半实用文档五. 源代码#include <stdio.h> #include <windows.h>#include <time.h> #include <string.h> #define N 100 struct emplo
12、yee int num;/ 工号char name10;姓名char sex; / 性别int age;/ 年龄char xueli30;学历int wage;/ 工资char addr30;住址long int tel;/ em100;void menu();void input();void save(int);void display();void del();void add();void search();void search_num();void search_xueli();void search_tel();void modify();void menu()printf(&q
13、uot; *欢送使用查询系统 *n");printf("n");printf("n");printf("*耳口工信自管壬理 *n");printf("1.录入职工信息");printf("2.浏览职工信息n");printf("3.查询职工信息");printf("4.删除职工信息n");printf("5.增加职工信息);printf("6.修改职工信息n");printf("7.退出n");p
14、rintf("*谢使用 *n");void main()int n,flag;char a;menu();doprintf("请选择你需要操作的步骤(1-7):n");scanf("%d",&n);if(n>=1 &&n<=7)flag=1;break;elseflag=0;printf("您输入有误,请重新选择门;while(flag=0);while(flag=1)switch(n)case 1:printf("输入职工信息case 2:printf("浏览职工信息
15、case3:printf("按职工n");printf("n");search();break;case 4:printf("删除职工信息case 5:printf("添加职工信息case 6:printf("修改职工信息case 7:exit(0);break;default :break;n");printf("n");input();break;n");printf("n");display();break;号或学历查询职工信息n");printf(
16、"n");del();break;n");printf("n");add();break;n");printf("n");modify();break;实用文档getchar();printf("n");printf(是否继续进行(y or n):n");scanf("%c", &a);if(a='y')flag=1;system("cls");menu();printf("请再次选择你需要操作的步骤(1-7):
17、n");scanf("%d",&n);printf("n");elseexit(0); void input()int i,m;printf("请输入需要创立信息的职工人数(1-100):n");scanf("%d",&m);for (i=0;i<m;i+)printf("职工号:);srand(int)time(0);emi.num=rand()%10000+20000000;if(emi.num!=emi-1.num)printf("%8d ",em
18、i.num);printf("n");printf("请输入姓名:");scanf("%s",);getchar();printf("请输入性别(f-女 m-男):");scanf("%c",&emi.sex);printf("请输入年龄:");scanf("%d",&emi.age);printf("请输入学历:");scanf("%s",emi.xueli);printf(请输入工
19、资:);scanf("%d",&emi.wage);printf("请输入住址:");scanf("%s",emi.addr);printf("请输入 :");scanf("%d", &emi.tel);printf("n");printf("n 创立完毕!n");save(m); void save(int m)int i;FILE*fp;if (fp=fopen("employee_list","wb&qu
20、ot;)=NULL)printf ("cannot open filen");exit(0);for (i=0;i<m;i+)if (fwrite(&emi,sizeof(struct employee),1,fp)!=1)printf("file write error'n");fclose(fp);int load()FILE*fp;int i=0;if(fp=fopen("employee_list","rb")=NULL)printf ("cannot open filen&
21、quot;);exit(0);elsedofread(&emi,sizeof(struct employee),1,fp); i+;while(feof(fp)=0);fclose(fp);return(i-1); void display() int i;int m=load();printf("n职工号t姓名t性别t年龄t学历t工资t住址t n");for(i=0;i<m;i+)printf("n %dt%st%ct%dt%st%dt%st%ldn",emi.num,,emi.sex,emi.age,emi.xueli,
22、emi.wage,emi.addr,emi.tel); void del()int m=load();int i,j,n,t,flag;char name20;printf("n原来的职工信息:n");display();printf("n");printf(" 请输入要删除的职工的姓名:n");scanf("%s",name);for(flag=1,i=0;flag &&i<m;i+)if(strcmp(,name)=0)printf("n 已找到此人,原始记录为:
23、 n");n");printf("n职工号t姓名t性别t年龄t学历t工资t住址t printf("n%dt%st%ct%dt%st%dt%st%ldn",emi.num,,emi.sex,emi.age,emi.xueli,emi.wage,emi.addr,emi.tel);printf("n确实要删除此人信息请按1,不删除请按0n");scanf("%d",&n);if(n=1)for(j=i;j<m-1;j+)strcpy(,em|j+1.name);e
24、mj.num=em|j+1.num;emj.sex=emj+1.sex;emj.age=emj+1.age;strcpy(emj.xueli,em|j+1.xueli);emj.wage=emj+1.wage;strcpy(emj.addr,emj+1.addr);emj.tel=emj+1.tel;flag=0;if(!flag)m=m-1;elseprintf("n对不起,查无此人!n");printf("n浏览删除后的所有职工信息:n");save(m);display();printf("n继续删除请按1,不再删除请按0n")
25、;scanf("%d", &t);switch(t)case 1:del();break;case 0:break;default :break; void add()FILE*fp;int n;int count=0;int i;int m=load();printf("n原来的职工信息:n");display.;printf("n");fp=fopen("emploee_list","a");printf("请输入想增加的职工数:n");scanf("%
26、d",&n);for (i=m;i<(m+n);i+)printf("n 请输入新增加职工的信息:n"); printf("请输入职工号:");srand(int)time(0);emi.num=rand()%10000+20000000;if(emi.num!=emi-1.num)printf("%8d ",emi.num);printf("n");printf("请输入姓名:");scanf("%s",);getchar();pri
27、ntf("请输入性别(f-女 m-男):");scanf("%c", &emi.sex);printf("请输入年龄:");scanf("%d", &emi.age);printf("请输入学历:");scanf("%s",emi.xueli);printf("请输入工资:);scanf("%d", &emi.wage);printf("请输入住址:");scanf("%s",emi
28、.addr);printf("请输入 :");scanf("%d", &emi.tel);printf("n");count=count+1;printf("已增加的人数:n");printf("%dn",count);printf("n添加完毕!n");m=m+count;printf("n浏览增加后的所有职工信息:n");printf("n");save(m);display();fclose(fp);void search
29、()int t,flag;doprintf("n按职工号查询请按1 ;按学历查询请按2 ;进入主函数按3n");scanf("%d", &t);if(t>=1 &&t<=4)flag=1;break;elseflag=0;printf("您输入有误,请重新选择门;while(flag=O);while(flag=1)switch(t)case 1:printf("按职工号查询 n");search_num();break;case 2:printf("按学历查询 n")
30、;search_xueli();break;case 3:main();break;default:break; void search_num()int num;int i,t;int m=load();printf(" 请输入要查找的职工号 (20001111-20009999):n");scanf("%d",&num);for(i=0;i<m;i+)if(num=emi.num)printf("n已找到此人,其记录为:n");printf("n职工号t姓名t性别t年龄t学历t工资t住址t n")
31、;printf("n%dt%st%ct%dt%st%dt%st%ldn",emi.num,,emi.sex,emi.age,emi. xueli,emi.wage,emi.addr,emi.tel);break;if(i=m)printf("n对不起,查无此人n");printf("n");printf("返回查询函数请按1,继续查询职工号请按2n");scanf("%d", &t);switch(t)case 1:search();break;case 2: break
32、;default:break;void search_xueli()char xueli30;int i,t;int m=load();printf(" 请输入要查找的学历:n");scanf("%s",xueli);for(i=0;i<m;i+)if(strcmp(emi.xueli,xueli)=0)printf("n已找到,其记录为:n");printf("n职工号t姓名t性别t年龄t学历t工资t住址t n");printf("n%dt%st%ct%dt%st%dt%st%ldn",
33、emi.num,,emi.sex,emi.age,emi. xueli,emi.wage,emi.addr,emi.tel);if(i=m)printf("n");printf("返回查询函数请按1,继续查询学历请按 2n");scanf("%d", &t);switch(t)case 1:search();break;case 2:break;default :break; void modify()int num;char name10;char sex;int age;char xueli30;int w
34、age;char addr30;long int tel;int b,c,i,n,t,flag;int m=load();printf("n原来的职工信息:n");display();printf("n");printf("请输入要修改的职工的姓名:n");scanf("%s",name);for(flag=1,i=0;flag &&i<m;i+)if(strcmp(,name)=0)printf("n已找到此人,原始记录为:n");printf("
35、;n职工号t姓名t性别t年龄t学历t工资t住址t n");printf("n%dt%st%ct%dt%st%dt%st%ldn",emi.num,,emi.sex,emi.age,emi.xueli,emi.wage,emi.addr,emi.tel);printf("n确实要修改此人信息请按1 ;不修改请按0n");scanf("%d",&n);if(n=1)printf("n需要进行修改的选项n 1.职工号2.姓名3.性别4.年龄5.学历6.工资7.住址8. n");printf("请输入你想修改的那一项序号:n");scanf("%d", &c);if(c>8|c<1)printf("n选择错误,请重新选择!n");flag=O;if(flag=1)printf("n对不起,查无此人!n");do switch(c)case 1:printf("职工号改为:");scanf("%d",&num);emi-1.num=num;break;cas
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 18760-2025消费品售后服务方法与要求
- 下水井维修合同范本
- 供应合同范本长期
- 2025年吐鲁番怎么考货运从业资格证
- 住宅绿化养护合同范本
- 医疗健康服务合同范本
- 个体工商退股合同范本
- 助理编辑聘约合同范本
- 苏州代建合同范本
- 公司改造施工合同范本
- 中央2025年中国科协所属单位招聘社会在职人员14人笔试历年参考题库附带答案详解-1
- 圆柱的表面积(说课稿)-2023-2024学年六年级下册数学北师大版
- 《神经系统MRI解读》课件
- 2024年江苏信息职业技术学院高职单招语文历年参考题库含答案解析
- 2025年学校春季开学典礼校长讲话致辞 (汇编11份)
- 中华人民共和国保守国家秘密法实施条例培训课件
- 2024年全国统一高考英语试卷(新课标Ⅰ卷)含答案
- 2024年认证行业法律法规及认证基础知识 CCAA年度确认 试题与答案
- 2024年潍坊工程职业学院高职单招(英语/数学/语文)笔试历年参考题库含答案解析
- 部编版一年级语文下册全册分层作业设计
- 机构占比分时指标(升级版)源码作者:罗克hq
评论
0/150
提交评论