收藏 分销(赏)

c语言专业课程设计职工考勤标准管理系统.docx

上传人:w****g 文档编号:2796948 上传时间:2024-06-06 格式:DOCX 页数:19 大小:70.16KB
下载 相关 举报
c语言专业课程设计职工考勤标准管理系统.docx_第1页
第1页 / 共19页
c语言专业课程设计职工考勤标准管理系统.docx_第2页
第2页 / 共19页
c语言专业课程设计职工考勤标准管理系统.docx_第3页
第3页 / 共19页
c语言专业课程设计职工考勤标准管理系统.docx_第4页
第4页 / 共19页
c语言专业课程设计职工考勤标准管理系统.docx_第5页
第5页 / 共19页
点击查看更多>>
资源描述

1、青岛理工大学C语言程序设计题目 职员考勤管理程序 指导老师: 姓名: 学号: 班级: 专业: 计算机工程 地点: 计算机工程学院机房 时间: .6.30 至 .7.4 一、内容此系统以对职员考勤为背景,提供对职员信息、上下班时间录入、显示、查询、删除等功效。具体功效实现以下:1、 职员信息新建:实现职职员号、姓名、次序号、上下班时间录入功效,并能将其以文件形式加以保留。2、 考勤信息浏览:实现对全体职员所投考勤信息浏览功效。3、 查询功效:实现按工号或姓名查询职员一周上下班时间功效。4、 删除功效:实现对职员考勤信息删除管理。5、 系统以菜单方法工作,界面清楚,易于操作。二、上机环境操作系统:

2、windows xp/8.1开发工具:vc6.0三、函数调用关系图 录入函数 input()主函数显示函数 display()查询函数 search0()删除函数 del()四、各函数功效说明对每个函数功效加以说明,说明该函数关键实现了什么内容。比如:1 main()主函数2. void input();录入函数3. void display();显示函数4. void search0();查找函数5. void del();删除函数五、算法描述或步骤图(或进行描述,或绘出步骤图,例子见下)主函数 欢迎界面程序 主菜单输入要选择选项前序号,给x赋值 Switch() Case条件Case1Ca

3、se2Case3Case4Case5DefultInput()Display()Search0()Del()Exit()录入函数 定义局部变量i,x 打开文件打不开文件(x!=n) Do-while循环 Scanf输入职员信息进入结构Fwrite把输入职员信息写入文件 输入结束标识x(是n就结束,不然继续输入),判定是否跳出循环输出“打不开文件”显示函数 定义局部变量i 打开文件 Fseek查询文件末尾,计算n Rewind将指针指向文件开头in for循环 i=0; fread读取文件,printf输出读取到文件 i+; 查询函数 定义局部变量 打开文件 Fseek查询文件末尾,计算n(结构

4、体个数) Rrewind将指针指向文件开头in for循环 i=0; fread读取文件,printf输出读取到文件 i+; 读取显示结束后,跳出循环,在fclose关闭文件删除函数 定义局部变量 打开文件 Fseek查询文件末尾,计算n(结构体个数) Rrewind将指针指向文件开头in for循环 i=0; fread读取文件,遍历结构体数组,找到信息并删除 i+; 读取显示结束后,跳出循环,在fclose关闭文件六、程序运行效果图;欢迎界面主菜单录入考勤信息显示考勤信息查询考勤信息删除考勤信息删除考勤信息成功七、总结经过这次做C语言课设,我发觉这学期在老师那学只是部分皮毛而已。编程知识博

5、大精深,还有许很多多函i数我全部不知j道,不会用,在以后自己还要不停i学习。经过这几天做课设,我体会到这个过程是艰辛并愉快着,这个过程中充满了编程乐趣。每次为怎样把实际中问题转化为计算机能够识别语言而苦恼、烦躁,不停在图书馆和网上查找自己需要资料,可是一旦自己把程序编出来了,并在计算机上运行经过,自己心里又是愉快,有一个巨大成就感回荡在心头,把坐在电脑前多个小时苦和累全部忘了。这次课设,是我自己第一次靠自己编出来一个完整程序,我会把这个程序一直保留着,伴随我以后在编程方面学习加深,我会自己慢慢改善它,让它见证我成长历程。总言而之,这几天做课设我过得很充实,也让我学习到了很多。八、参考文件1 李

6、春葆等C语言程序设计清华大学出版社,2 谭浩强C程序设计(第三版)清华大学出版社,九、程序清单#include#include#include#include /头文件申明#define N 50void input();void display();void search();void del(); /定义函数struct worker /结构体变量申明 char no10; char name10; int number; char go14; char back14;struct worker flN; /定义结构体数组int n;int main() int x; char ch; d

7、o printf(nttt=nttttnnnn); printf( 欢迎使用职员考勤管理系统 nn); printf(n 编程者: nnn); printf( *按任意键继续*nnn); ch=getch(); while(!ch); system(cls); do haha: printf( -n); printf( 菜单 n); printf( _nn);printf(tttt1.录入职员考勤信息n); printf(tttt2.显示职员考勤信息n);printf(tttt3.查找职员考勤信息n);printf(tttt4.删除职员考勤信息n);printf(tttt5.退出并保留n);p

8、rintf(请输入要选择选项前序号:); scanf(%d,&x); getchar(); system(cls); switch(x) case 1: input();break; case 2: display();break; case 3: search();break; case 4: del();break; case 5: exit(0); default: goto haha; while(1); return 0; void input() /录入函数 int i=0; char ch; FILE *fp; /定义FLIe文件操作指针 if(fp=fopen(C:职员考勤信息

9、管理.txt,ab+)=NULL) if(fp=fopen(C:职员考勤信息管理.txt,wb+)=NULL) printf(不能建立文件!n); exit(0); printf(nttt 输入职员考勤信息 nn); do printf( 输入格式:职员号t姓名t次序数t上班时间t下班时间n); printf(考勤信息录入:); scanf(%s%s%d%s%s,fli.no,fli.name,&fli.number,fli.go,fli.back); fwrite(&fli,sizeof(struct worker),1,fp); /将结构体数组内容内容写到文件中 printf(按回车键继续

10、输入,按N停止输入:n); printf(n); getchar(); ch=getch(); i+; while(ch!=n&ch!=N); fclose(fp); n=i; system(cls);void display() /显示函数 int i; char ch; FILE *fp; if(fp=fopen(C:职员考勤信息管理.txt,rb+)=NULL) printf(不能打开文件!n); exit(1); fseek(fp,0,2); /将文件指针移到文件尾 n=ftell(fp)/sizeof(struct worker); do printf(n); printf(ttt

11、考勤信息 n); printf(ttt nn); printf(tt职员号t姓名t次序数t上班时间t下班时间n); rewind(fp); for(i=0;in;i+) fread(&fli,sizeof(struct worker),1,fp); /从文件指针fp读取一个size为sizeof(struct worker)数据,存入fli printf(tt%st%st%dt%st%sn,fli.no,fli.name,fli.number,fli.go,fli.back); printf(nntt 按任意键返回主菜单nntt ); ch=getch(); while(!ch); fclos

12、e(fp); system(cls);void search() /查找函数 int x,k=0,i; char z20,sN20,ch;FILE *fp; if(fp=fopen(C:职员考勤信息管理.txt,rb+)=NULL) printf(不能打开文件!n); exit(1); fseek(fp,0,2); n=ftell(fp)/sizeof(struct worker); do haha: printf(ttt 考勤信息查询 n); printf(ttt1.按职员号查询n);printf(ttt2.按姓名查询n);printf(ttt3.按上班时间查询n); printf(ttt4

13、.按下班时间查询n);printf(ttt5.返回主菜单n); printf(ttt6.退出并保留nn); printf(ttt 选择功效选项(输入功效前数字) nn);printf(ttt); scanf(%d,&x); getchar(); system(cls);for(i=0;in;i+) switch(x) case 1:strcpy(si,fli.no);break; case 2: strcpy(si,fli.name);break; case 3: strcpy(si,fli.go);break; case 4: strcpy(si,fli.back);break; case

14、5: goto ap; case 6: exit(0); default: goto haha; do printf(nnttt请输入查询信息: ); gets(z); for(i=0;i不能创建文件n); exit(0); fseek(fp,0,2);n=ftell(fp)/sizeof(struct worker); fclose(fp);fp=fopen(C:职员考勤信息管理.txt,wb); printf(n); printf(ttt 考勤信息删除n); printf(tttnn); printf(ttt1.按职员号删除n);printf(ttt2.按姓名删除n);printf(ttt

15、3.按上班时间删除n); printf(ttt4.按下班时间删除n); printf(ttt 选择功效选项(输入功效前数字) nn);printf(nttt); scanf(%d,&l); getchar();/存放回车符printf(请输入删除职员具体条件:); scanf(%s,m); /输入具体条件存入m数组getchar(); system(cls); printf(ttt n);printf( 职员信息删除成功n);printf(ttt n);printf(其它职员信息有:n);printf(ttt n); printf(t=n); printf(t职员号t姓名t次序数t上班时间t下

16、班时间n ); for(i=0;in;i+) switch(l) case 1: strcpy(st,fli.no);break; case 2: strcpy(st,fli.name);break; case 3: strcpy(st,fli.go);break; case 4: strcpy(st,fli.back);break; default:printf( 选择错误 n);break; if(strcmp(m,st)!=0) /查找到要删除信息 j=i; fwrite(&flj,sizeof(struct worker),1,fp); /不要删除信息写回文件printf(tt%st%st%dt%st%sn,flj.no,flj.name,flj.number,flj.go,flj.back);/能帮助观察是否已经删掉了要删信息 printf(t=n);fclose(fp); getchar(); /存放回车符 system(cls);

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服