ImageVerifierCode 换一换
格式:DOCX , 页数:38 ,大小:421.43KB ,
资源ID:2482944      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2482944.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(员工考勤信息管理的设计和实现.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

员工考勤信息管理的设计和实现.docx

1、员工考勤信息管理的设计和实现员工考勤信息管理的设计和实现1. 系统描述1.1问题说明本试验要求是设计员工考勤管理系统,本系统作用是用于企业员工管理,解决人工考勤面对庞大数据量的弊病.该系统侧重于员工考勤信息管理和员工考勤信息的登记与查询。本系统使用的开发工具是vc+开发程序,通过已编制好的程序,完成对员工信息的输入、输出、插入、删除操作,以及员工迟到、早退考勤信息的登记和查询,完善企业管理现代化,方便管理人员统计,考核员工出勤情况,方便员工管理部门查询,考核员工的出勤率,准确地掌握员工出勤情况和相关资料,有效管理、掌握员工各项情况.1.2功能需求本试验要求实实现员工考勤管理系统,本系统包括的基

2、本功能有:1.2.1员工信息的管理1.2.2员工信息的统计1.2.3员工考勤信息的管理和查询1.3数据需求本系统为完成所要求功能需要的数据包括:1.3.1员工ID,姓名,部门1.3.2员工迟到,早退情况1.3.3在一定期间里员工迟到,早退次数2.系统设计2.1内存数据结构设计系统各实体可用以下关系表示:员工(ID,姓名,部门)考勤(ID,姓名,迟到,早退,日期)统计(ID,姓名,迟到次数,早退次数,期间2.2数据文件设计2.2.1.存储员工信息的文件:文件名:information1.txt文件内容:日期ID 姓名 部门. . .例:2010 3 1 ID 姓名 部门 11 张三 安保部 12

3、 李四 安保部2.2.2.存储员工考勤信息的文件:文件名:由日期经过变换后得到。变换方式:(1)给整个系统设置一个基准日期 基准日期:一段时期内的起始日期,通常规定为一个月的1号,考勤所记录的是基准日期之后的考勤信息.(2)考勤记录的日期与基准日期相差的天数加1。由以上变换可得:基准日期的考勤的文件名为“1.txt”。2.2.3.存储考勤一段时期的统计信息的文件:文件名:管理员自己输入。文件内容:起始日期 终止日期ID 姓名 迟到次数 早退次数 . 例如:2010 4 1 2010 6 30ID 姓名 迟到次数 早退次数11 张三 1 212 李四 2 0各文件之间的关系:考勤文件是按照当天的

4、员工信息文件的顺序依次记录。在此把请假等排除在外不考虑。2.3代码设计设计代码主要包括:void input_employee() /第一次输入员工信息void read_file() /专门用于读取存储员工信息的文件的函数void write_file() /专门用于向存储员工信息的文件中写函数 void output_employee() /输出员工信息 void insert_employee(struct employee new_person) /添加员工信息 void delete_employee(int id) /删除员工信息void management_employee()

5、 /管理员工信息总函数int computer(struct data someday) /计算日期对应的文件名void recorder() /记录每天每个员工的考勤情况 void statistic() /统计所有员工某段时间的考勤情况,把统计结果输入文件中 void single_quire() /查询某一天的考勤情况 void multi_quire() /查询一段连续时间的考勤情况 void quire_attendance() /查询的总函数 void management_attendance() /考勤管理的总函数2.4 程序代码#include stdafx.h#includ

6、e#include#include#include process.h#include #define MAX_COUNT 30 /最大员工数struct employee /员工信息结构体 int id; char name20; char department20;struct date /日期结构体 int year; int month; int day;struct attendance /考勤结构体 int id; int late; int early; char name20; struct date dat;struct statistic /统计表结构体 int id; i

7、nt late_count; int early_count; char name20;int COUNT=0; /记录员工的人数int FLAG_pause=1; /涉及插入,输出函数的联合操作时某些位置是否调用system(“pause”)struct employee personMAX_COUNT;struct date BASE_DATA=2012,1,1; /基准日期void input_employee() /第一次输入员工信息,相当于初始化 system(cls); FILE *fp1,*fp2; struct employee temp; fp1=fopen(informat

8、ion1.txt,w); fp2=fopen(information2.txt,w); printf(tttt 员工信息n); printf(nttttIDt姓名t部门ntttt); fprintf(fp1,tttt 输入员工信息n); fprintf(fp1,nttttIDt姓名t部门n); scanf(%d%s%s,&temp.id,temp.name,temp.department); while(temp.id!=0) personCOUNT=temp; printf(%d,temp.id); COUNT+; fprintf(fp1,tttt%dt%st%sn,temp.id,temp

9、.name,temp.department); fprintf(fp2,%dt%st%sn,temp.id,temp.name,temp.department); printf(tttt); scanf(%d%s%s,&temp.id,temp.name,temp.department); fclose(fp1); fclose(fp2);void read_file() /专门用于读存储员工信息的文件的函数 FILE *fp; COUNT=0; if(fp=fopen(information2.txt,r)=NULL) printf(cant not open filen); exit(1)

10、; while(!feof(fp) fscanf(fp,%d%s%s,&personCOUNT.id,personCOUNT.name,personCOUNT.department); COUNT+; COUNT-; fclose(fp);/专门用于向存储员工信息的文件中写函数void write_file() int i; FILE *fp1,*fp2; fp1=fopen(information1.txt,w+); fp2=fopen(information2.txt,w+); if(fp1=NULL | fp2=NULL) printf(cant not open filen); exi

11、t(1); fprintf(fp1,tttt 输入员工信息n); printf(nttttIDt姓名t部门n); for(i=0;iCOUNT;i+) fprintf(fp1,tttt%dt%st%sn,personi.id,personi.name,personi.department); fprintf(fp2,%dt%st%sn,personi.id,personi.name,personi.department); fclose(fp1); fclose(fp2);/输出员工信息void output_employee() int i; int id; int choice; char

12、 temp20; system(cls); read_file(); /读员工信息文件 printf(nttttt输出员工信息n); printf(nt1.输出全体员工信息t); printf(2.按姓名输出员工信息t); printf(3.按ID输出员工信息t); printf(4.按部门员工信息t); printf(5.返回主菜单n); printf(nt请选择(15):t); start: scanf(%d,&choice); if(choice5) printf(t输入错误,请重输:t); goto start; switch(choice) case(1): printf(tttID

13、t姓名t部门n); for(i=0;iCOUNT;i+) printf(ttt%dt%st%sn,personi.id,personi.name,personi.department); break; case(2): printf(ttt输入姓名:); scanf(%s,temp); printf(tttIDt姓名t部门n); for(i=0;iCOUNT;i+) if(strcmp(personi.name,temp)=0) printf(ttt%dt%st%sn,personi.id,personi.name,personi.department); break; case(3): printf(ttt输入ID:); scanf(%d,&id); printf(tttIDt姓名t部门n); for(i=0;iCOUNT;i+) if(personi.id=id) printf(ttt%dt%st%sn,personi.id,personi.name,personi.department

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1