员工考勤信息管理的设计和实现30页.docx
- 文档编号:2204912
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:38
- 大小:419.32KB
员工考勤信息管理的设计和实现30页.docx
《员工考勤信息管理的设计和实现30页.docx》由会员分享,可在线阅读,更多相关《员工考勤信息管理的设计和实现30页.docx(38页珍藏版)》请在冰豆网上搜索。
员工考勤信息管理的设计和实现30页
员工考勤信息管理的设计和实现
1.系统描述
1.1问题说明
本试验要求是设计员工考勤管理系统,,本系统作用是用于企业员工管理,解决人工考勤面对庞大数据量的弊病.该系统侧重于员工考勤信息管理和员工考勤信息的登记与查询。
本系统使用的开发工具是开发程序,通过已编制好的程序,完成对员工信息的输入、输出、插入、删除操作,以及员工迟到、早退考勤信息的登记和查询,完善企业管理现代化,方便管理人员统计,考核员工出勤情况,方便员工管理部门查询,考核员工的出勤率,准确地掌握员工出勤情况和相关资料,有效管理、掌握员工各项情况.
1.2功能需求
本试验要求实实现员工考勤管理系统,本系统包括的基本功能有:
1.2.1员工信息的管理
1.2.2员工信息的统计
1.2.3员工考勤信息的管理和查询
1.3数据需求
本系统为完成所要求功能需要的数据包括:
1.3.1员工,姓名,部门
1.3.2员工迟到,早退情况
1.3.3在一定期间里员工迟到,早退次数
2.系统设计
2.1内存数据结构设计
系统各实体可用以下关系表示:
员工(,姓名,部门)
考勤(,姓名,迟到,早退,日期)
统计(,姓名,迟到次数,早退次数,期间
2.2数据文件设计
2.2.1.存储员工信息的文件:
文件名:
1
文件内容:
日期
姓名部门
….…..…..
例:
201031
姓名部门
11张三安保部
12李四安保部
2.2.2.存储员工考勤信息的文件:
文件名:
由日期经过变换后得到。
变换方式:
(1)给整个系统设置一个基准日期
基准日期:
一段时期内的起始日期,通常规定为一个月的1号,考勤所记录的是基准日期之后的考勤信息.
(2)考勤记录的日期与基准日期相差的天数加1。
由以上变换可得:
基准日期的考勤的文件名为“1”。
2.2.3.存储考勤一段时期的统计信息的文件:
文件名:
管理员自己输入。
文件内容:
起始日期终止日期
姓名迟到次数早退次数
…….……
例如:
2010412010630
姓名迟到次数早退次数
11张三12
12李四20
各文件之间的关系:
考勤文件是按照当天的员工信息文件的顺序依次记录。
在此把请假等排除在外不考虑。
2.3代码设计
设计代码主要包括:
()第一次输入员工信息
()专门用于读取存储员工信息的文件的函数
()专门用于向存储员工信息的文件中写函数
()输出员工信息
()添加员工信息
()删除员工信息
()管理员工信息总函数
()计算日期对应的文件名
()记录每天每个员工的考勤情况
()统计所有员工某段时间的考勤情况,把统计结果输入文件中
()查询某一天的考勤情况
()查询一段连续时间的考勤情况
()查询的总函数
()考勤管理的总函数
2.4程序代码
""
<>
<>
<>
""
<>
30最大员工数
员工信息结构体
{
;
[20];
[20];
};
日期结构体
{
;
;
;
};
考勤结构体
{
;
;
;
[20];
;
};
统计表结构体
{
;
;
;
[20];
};
0;记录员工的人数
1;涉及插入,输出函数的联合操作时某些位置是否调用(“”)
[];
{2012,1,1};基准日期
()第一次输入员工信息,相当于初始化
{
("");
*1,*2;
;
1("1","w");
2("2","w");
("\t\t\t\t员工信息\n");
("\n\t\t\t\\t姓名\t部门\n\t\t\t\t");
(1,"\t\t\t\t输入员工信息\n");
(1,"\n\t\t\t\\t姓名\t部门\n");
("");
(0)
{
[];
("");
;
(1,"\t\t\t\\\\n");
(2,"\\\n");
("\t\t\t\t");
("");
}
(1);
(2);
}
()专门用于读存储员工信息的文件的函数
{
*;
0;
((("2","r")))
{
("\n");
(1);
}
(())
{
(,""[][],
[]);
;
}
;
();
}
专门用于向存储员工信息的文件中写函数
()
{
i;
*1,*2;
1("1","");
2("2","");
(12)
{
("\n");
(1);
}
(1,"\t\t\t\t输入员工信息\n");
("\n\t\t\t\\t姓名\t部门\n");
(0<)
{
(1,"\t\t\t\\\\n"[i][i][i]);
(2,"\\\n"[i][i][i]);
}
(1);
(2);
}
输出员工信息
()
{
i;
;
;
[20];
("");
();读员工信息文件
("\n\t\t\t\t\t输出员工信息\n");
("\n\t1.输出全体员工信息\t");
("2.按姓名输出员工信息\t");
("3.按输出员工信息\t");
("4.按部门员工信息\t");
("5.返回主菜单\n");
("\n\t请选择(1~5):
\t");
:
("");
(<1>5)
{
("\t输入错误,请重输:
\t");
;
}
()
{
(1):
{
("\t\t\\t姓名\t部门\n");
(0<)
("\t\t\\\\n"[i][i][i]);
;
}
(2):
{
("\t\t\t输入姓名:
");
("");
("\t\t\\t姓名\t部门\n");
(0<)
(([i])0)
("\t\t\\\\n"[i][i].
[i]);
;
}
(3):
{
("\t\t\t输入:
");
("");
("\t\t\\t姓名\t部门\n");
(0<)
{
([i])
{
("\t\t\\\\n"[i][i],
[i]);
;
}
}
;
}
(4):
{
("\t\t\t输入部门:
");
("");
("\t\t\\t姓名\t部门\n");
(0<)
(([i])0)
("\t\t\\\\n"[i][i],
[i]);
;
}
(5):
;
}
("");
}
添加员工信息
()有新员工加入时,插入
{
i;
("");
();读文件
;
([i]>)
{
[i][1];
;
}
[i];
;
();
(0)
("");
}
删除员工信息
()员工辞职,退休等时,删除员工信息,数组方式存储的线性表的删除操作
{
i;
j;
();读文件
("");
(0<)
([i])
;
(<)
[j][1];
;
();
(0)
("");
}
()管理员工信息总函数
{
;
;
;
("\n\t\t\t\t\t员工信息管理\n");
("\n\t1.输入员工信息\t");
("2.输出员工信息\t");
("3.插入员工信息\t");
("4.删除员工\t");
("5.返回主菜单\n");
("\n\t请选择(1~5):
\t");
:
("");
(<1>6)
{
("\t输入错误,请重输:
\t");
;
}
()
{
(1):
{
();
;
}
(2):
{
();
;
}
(3):
{
("\t\t\t插入新员工信息\n");
("\t\t\t请输入员工的:
\n\t\t\\t姓名\t部门\n");
("\t\t\t");
("");
();
;
}
(4):
{
("\t\t\t删除员工信息\n");
("\t请输入要删除的员工:
\t");
("");
();
;
}
(5):
;
}
}
计算日期对应的文件名,相当于哈希函数,以一年内为界,一年以天计算
()
{
i;
0;
()
1;
{
(1<)
(i)
{
2:
28;
3:
31;
4:
30;
5:
31;
6:
30;
7:
31;
8:
31;
9:
30;
10:
31;
11:
30;
}
;
}
;
}
记录每天每个员工的考勤情况
()
{
i;
;
;
;
;
[20];
[40];零时存放某一天的考勤文件的文件名
*;指向某一天的考勤文件的指针
;
("");
();
("\n\t\t\t\t考勤记录\n");
("\n\t\t日期:
");
("");
();
(,10);转换成
(,"");
(,"w");
(,"\\\n");
("\n\t\\t姓名\t迟到\t早退\n");
(,"\t姓名\t迟到\t早退\n");
(0<)对所有的员工打考勤,并写入对应的文件中
{
[i];
([i]);
("\n\t\\\t");
("");
(,"\\\\n");
}
(,"\n");
();
("");
}
统计所有员工某段时间的考勤情况,把统计结果输入文件中
()
{
i;
j;
0;
0;标识,用于判断一个从文件中读入的新记录是否在存中存在,如果不存在则新分配内存,否则追加在已有的记录上
;
;
;判断是否保存
[40];零时存放某一天的考勤文件的文件
;
;
;
[20];
[20];
[20];
[20];
*;指向某一天的考勤文件的指针
;统计的起始日期,最终日期,只能统计连续一段时间的考勤
;
;存储零时的
[30];存储每个员工的迟到,早退次数的信息
(0<30)
{
[i]0;
[i]0;
}
("");
("\t\t\t统计员工考勤\n");
("\n\t请输入起止日期\n");
("\n\t\t起始日期:
");
("");
("\n\t\t终止日期:
");
("");
();
();
(<)
{
(,10);转换成
(,"");
(,"r");
(,"");
()
{
(())
{
(,""[k][k][k][k]);
;
}
;
}
{
(())
{
(,"",
);
(0<)
{
([j])
{
1;
(1)
[j];
(1)
[j];
;
}
}
(0)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 员工 考勤 信息管理 设计 实现 30