




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、韦岛理工丈曇c语言程序设计题目 职工考勤管理程序指导教师:李传斌姓名:!学号:*班级:专业:软件工程专业地点:计算机工程学院机房时间:2014.6.30 至 2014.7.4一、内容(标题:宋体,粗体,四号字)木系统主要实现了职工考勤的管理,具冇添加职工信息,全部删除职工信息,修改职工 信息,查询职工信息(包括:按职工号查找,按姓名查找,按上班时间查找,按卜-班时间查 找)。应用该系统只盂在vc6.0上使用,按系统提示输入相应信息即可,方便快捷。二、上机环境操作系统:win 8开发工具:vc6.0三、函数调用关系图四. 各函数功能说明5. void findstuno6. void finds
2、tudname8. void findstudgotime9. void findstudbacktime1. void main()2. void addstud3- void delalistud4. void updatestud主函数添加职工信息 删除全部职工信息 修改职工信息 查询职工号 查询姓名 杏询上班时间 查询下班时间五、算法描述或流程图主函数:结束添加函数:结朿六、程序运行效果图"d:microsoft visual studiomyprojects课程tstm_1debugexam1_1.exe11忝号01勧号02勧号03勧号04勧号05勧号06勧号07 0 :
3、-j 0 - n 0 - 0 : 0 - n 0 : n 0 - 丄职00丄职001 职001 职001 职00丄职001 职001 圭木记矍记矍记屠记墨记矍记矍记操职住输 息人工息人h息人工息人工息人工息人工息人工息5:rj 八亠一一呂刖只亠_s刖口八亠一一殳刖似一一思刖侬一一思刖似一5厶刖瓜一一口 号一 工 工 工 工 工 工 工 工询鸟 2 职 职 职 职 职 职 嚳一扔6 0 号哋法2:全删3:修改4喳询0:返回=1 姓名上班时间下班时间小李子 201301010101 2013020202022:全删3:修改4:查询0:返回二1 姓名上班时间下班时间小黑子 201303030303
4、2013040404042:全删3:修改4:查询0:返回6 蜉上班时间下班时间小晨子 201405050505 2014060606062:仝删3:修改4姓名上班时间小孙子 201407070707 2014080808082:全删3:修改4:查询0:返回二1 辱上班时间一 一小爱子 201409090909 2014101010102隆删3:修改4喳询0二返回6 姓名上班时间下班时间小健子 201411111111 2014121212122:全删3:修改4喳询0:返回d 姓名上班时间下班时间小神子 201403262100 2100052013142:全删3:修改4喳询0:返回二4 7:
5、±01时简8:卞班时|b=5下班时间下班时间下班时间"d:microsoft visual studiomyprojects课程设计 1_1debugexam1_1.exe职工倍息操作二1:添加2:全删3:修改4喳询0二返回二4 查询:5勰工号6:姓络7:上班时向8:卞班时|'0=5宜入职工号= 000003巻找结果如下:|a记录号 职工号33蛆王信息操作=1=jd 2 = 査询:5:职工号6:姓名7 瓠a輕名芳:小晨子 蚤找结果如下:4:查询0:返回二4上班时间201405050505下班时间201406060606记录号 职工号33上班时间20140505050
6、5下班时间201406060606蛆工信息操作:“添加2:全城 查询:5:职工号6:姓名7:±:输入上班时间= 201403262100 蚤找结果如下:參改4:查询0:返回二401 8:下班 0fbl=7记录号 职工号杜名 ? 小神子上班时间201403262100下班时间210005201314七、总结通过一个星期的折腾,总算把课程设计给完成了,这是一个坚苦而又漫长的过程。是啊, 读半年的书,课程设计可是第一次。看着劳动成果,很欣慰!“也许完成不了!” 一个星期前我这样对口己说,“完成他没问题!”两天前我们这样 说,现在我们可以说:“哈哈,完成啦”!刚开始,可以说是没有头绪,于是就
7、去翻书找例题,找有关内容。慢慢的自己就有了一 点想法,然后在自己的电脑上慢慢琢磨,遇到不会的时候就问问同学老师,但,功夫不负有 心人,成功属于坚持的人!虽然对着电脑做程序,冇点累冇点热,可是当看到劳动成果时,真是别冇一帝滋味在心 头啊!世上无难事,只怕有心人,的确如此°做完这个程序最大的收获就是感受到了坚持的 力量。!做完这个课程设计,我的自信一下子提高了,我也会写程序了;尽管对于有些人这种程 序会很简单,可对我们c语言初学者来说,已经很不容易了。这次体验为以后的学习计算机 的我们增强了信心。亨受劳动成果的滋味实在很美妙啊!八、参考文献李春葆.c语言程序设计教程(第2版).清华大学出
8、版社,2011九、程序清单(双列排版,小五号字)严职工考勤管理程序课程设计*/#include <stdio.h>#include <stdlib.h>#include <malloc.h>#include <string.h>#dcfinc n 20typedef structint no;/*职工号 */char name10;/*姓名 */char gotime14;/* 上班时间 */char backtinief 14;/* f班时间 */ worker;void addsiud();/*添加职工信息*/void delallstud(
9、);/*全删除职匸信息*/void updatcstud();/*修改职 t信息勺void findstudno(); /*查询职工号*/void findstudnameo; /*杳询姓名*/void findstudgotime();/*查询上班时间*/void findstudbacktime();/*查询下班时间*/void main()int num;do1printf(”职工信息操作:1:添加2:全删3:修改4渣询0:返回二>“);scanf( "%d",&num);if(num=4)printf(”查询:5:职工号6:姓名7:上班时间8:下班时间
10、二“);scanf(h%d",&num);switch(num) case l:addstud();break;case 2:delallstud();break;case 3: updatestud() ibreak;case 5:findstudno();brcak;case 6:findstudname();break;case 7:findstudgotime();break;case 8:findstudbacktime();break;case ():break;default:printf("选择项目错误n");brcak;)while(nu
11、m!=o);void addstud()file *fp;int i,n;worker stl,si2;if(fp=fopen("work.dat',"ab+")=null)/* 若文件存在以添加模式打开 */if(fp=fopen(,work.dat,;,wb+,)=null)/* 否则以写模式打开 */printfc't>>不能建立 work.dat 文件n");exit(o);ifscck(fp,0,2);文件位置指针置为文件尾*/n=ftell(fp)/sizeof( worker);/* 求文件中记录的个数 */if
12、(n>n)/*判断职工数是否过多*/printf("输入职工信息数目超过上限“);elseiprintfc1输入格式:职工号姓名上班时间下班时间n”);printf("职工记录:");scanf(',%d%s%s%s,&si 1 .no,si 1 .name,st 1 .gotime,st 1 .backiime); rewind(fp);i 二 0;while(i<n)fread(&st2,sizeof( worker), 1 ,fp);if(st2.no=st i .no) break;i+;if(i<n)/*存在重职
13、工号记录,则提示相应信息*/printf("t> > 职工号重复 n”);else/*不存在重职工号记录,则将新记录写入文件*/fseek(fp,0,2);严将位置指针移到文件末尾并写入一个职工记录*/fwrite (&st 1 ,sizeof( worker), 1 ,fp);)fclose(fp);/* 关闭文件 */void delallstud()file *fp;if(fp=fopen(,'work.dat,wb,)=null)/* 删除原有全部记录 */1printf("t»不能打开 work.dal 文件n");
14、exit(l);)printf("t记录全部删除n");fciose(fp);void updatestud()file *fp;worker st,nst;int n,i,no;if(fp=fopen(,work.dat',rb+,')=null)iprintf("t 不能打开 work.dat 文件n");exit(2);fseek(fp,0,2);/*文件位置指针置为文件末尾*/n=ftcll(fp)/sizcof( worker);/* 求文件中记录个数 */if(n>0)/*文件不为空*/printfc1要修改的职工号:”
15、);scanf("%d",&no);rcwind(fp);i=0;while(i<n)fread (&st,sizeof( worker), 1 ,fp);if(st.no=no) break;if(i<n)严找到该职工号的职工记录*/printfc' 输入格式姓名上班时间下班时间:”); scanf(,'%s%s%s",,nst.gotime,nst.backtime);/* 获取新职工号记录 */nst.no=st.no;/*不能修改职工号*/fscck(fp,-(long)sizcof( worke
16、r), 1);/* 指向修改记录开头 */fwrite(&nst,sizeof(worker)丄fp);/*用 nst 覆盖当前记录*/)else/*未找到该职工号的职工记录*/printf("t»没有d 的职工n'no);)else/*文件为空*/printfc'xo > 无任何记录 n");fciose(fp);void findstudno()int n,i,no;file *fp;worker st;if(fp=fopen(,work.dat',rbh)=null)iprintf("t 不能打开 work.d
17、at 文件n");exit(3);)fseek(fp,0,2);/*文件位置指针置为文件尾*/n=ftcll(fp )/sizeof( worker);/* 求文件中记录个数 */if(n>0)/*文件不为空*/printfc*输入职工号:”);scanf("%d",&no);rcwind(fp);i=0;while(i<n)fread (&st,sizeof( worker), 1 ,fp);if(st.no=no) break;i+;if(i<n)s');printf("査找结果如下:n");pri
18、ntf(" =printfc记录号 职工号 姓名上班时间 下班时间w);printf(h%4d% 1 od% 1 os% 18s% 18sn*i+1,st.no,,st.gotime,st.backtime);printfc' =n"); elseprintf("t»没有d职工号的职工n”,no);)else/*文件为空*/printfc'xo > 无任何记录 n");fclose(fp);void findstudnamc()int n,i,k=o;char name10;file *fp;worker s
19、t;if(fp-fopcn(,work.dat","rb")=null)iprintf(ht 不能打开 work.dat 文件n”);exit(3);ifscck(fp,0,2);/*文件位置指针置为文件末尾*/n=ftell(fp)/sizeof( worker);/* 求文件中记录个数 */if(n>0)/*文件不为空*/printf(m输入姓名号:”);scanf("%s",namc);rewind(fp);i=0;while(i<n)frcad(&st,sizeof( worker), 1 ,fp); if(strc
20、mp(,name)=o) printf("查找结果如下:n"); printfc=:=:=:=xn.);printfc记录号 职工号 姓名上班时间 下班时间5“);printf("%4d% 10d% 1 os% 18s% 18sn'i+1,st.no,,st.gotime,st.backtime);printf("n”);k+;if(k=o)prmtf(mt> > 没有 s 姓名的职工 nh,name);)else/*文件为空*/printf("t» 无任何记录 n");fcl
21、osc(fp);)void findstudgotime()int n,i,k=();char gotime14;file *fp;worker st;if(fp=fopen("work.dat',"rb")=null)printf("t 不能打开 work.dat 文件n");cxit(4);)fseek(fp,0,2);/*文件位置指针置为文件末尾*/n=ftell(fp)/sizeof( worker);/* 求文件中记录个数 */if(n>0)/*文件不为空*/printfc输入上班时间:”);scanf("%s
22、",go【ime);rewind(fp);i=0;whilc(i<n)fread(&s【,sizeof( worker), 1 ,fp);if(strcmp(st.gotime,gotime)=0) printfc1査找结果如下:n");printfc1=n );printfc记录号 职工号 姓名上班时间下班时间5”);printf("%4d% 1 od% i os% 18s% 18sn",i+1,st.no,,st.golime,st.backlime); printf(m=n );k+;i+;iif(k=o)prmtf(mt>>没有上班时间s的职工ngotime);else/*文件为空*/printf("t> > 无任何记录 n"
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 车辆无偿借用及紧急救援服务协议
- 彩票站行业规范与自律管理合作协议
- 右心衰竭临床诊疗规范
- 呕血窒息护理要点与实施规范
- 天然药物学:附子专题研究
- 2025年逆回购协议
- 小儿骨折护理要点
- 积水治疗与护理
- 低钾血症护理
- 细胞环境与互作
- 江湖算命揣摩技巧-《英耀篇》原文、翻译及其详解
- 北京市海淀区 2023-2024学年八年级下学期期末道德与法治试卷
- 2023年河南省郑州一中小升初数学试卷
- 统编版(部编版) 八年级下册 第六单元 课外古诗词诵读《送友人》公开课一等奖创新教学设计
- 湖南省邵阳市2024年八年级下学期英语期末质量检测卷附答案
- (高清版)JTGT 3364-02-2019 公路钢桥面铺装设计与施工技术规范
- GB/T 43955-2024棉及化纤纯纺、混纺纱线检验、标志与包装
- 一般现在时和现在进行时经典练习题
- 钢板桩支护技术规程
- 水平螺旋输送机设计计算及参数表
- 幼儿活动保护耳朵
评论
0/150
提交评论