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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

考勤管理系统.docx

1、考勤管理系统#include #include #include #include#define NUM 10int bc=0; /* */ struct student char num13;/* 工号 */ char name20; int chidao; int zaotui; /int late; typedef struct node struct student data; struct node *next; Node,*Link; void menu() /菜单/ printf(=); printf(- 考 勤 系 统 -); printf(=); printf(tttt1删除

2、职工资料ttttn); printf(tttt2职工资料录入ttttn); printf(tttt3查询职工资料ttttn); printf(tttt4修改职工资料ttttn); printf(tttt5保存职工资料ttttn); printf(tttt6整体浏览ttttn); printf(tttt7题目要求ttttn); printf(tttt0退出ttttn); /查询职工板块/Node* search(Link l,char findmess,char nameorcal) /* 该函数用于定位链表中符合要求的接点,并返回该指针 */ Node *r; if(strcmp(nameor

3、cal,num)=0) /* 按工号查询 */ r=l-next; while(r!=NULL) if(strcmp(r-data.num,findmess)=0) /比较/ return r; r=r-next; else if(strcmp(nameorcal,name)=0) /* 按姓名查询 */ r=l-next; while(r!=NULL) if(strcmp(r-data.name,findmess)=0) return r; r=r-next; return 0;void Qur1(Link l) /* 职工上班录入功能 */ int c; char findmess20;

4、Node *p; int h, s, y, d, mi; char str20= , m4, w4; time_t timep; time(&timep); strcpy(str,ctime(&timep); printf(%sn,str); sscanf(str,%s %s %d %d:%d:%d %d, w, m, &d, &h, &s, &mi, &y); printf(%d:%d:%dn, h, s, mi); if(!l-next) printf(n提示:没有资料可以查询!n); return; printf(n1按工号录入:n); printf(n2按姓名录入:n); printf

5、(n请选择序号:n); scanf(%d,&c); if(c=1)/* 工号 */ printf(请你输入要查找的工号:); scanf(%s,findmess); p=search(l,findmess,num); if(p) printf(tttt录入结果n); printf(-n); if(h8&h0&sdata.chidao+; else if(h14&h0&sdata.chidao+; else printf(休息时间n); else printf(n没有找到该职工!); else if(c=2) /* 姓名 */ printf(请你输入要查找的姓名:); scanf(%s,find

6、mess); p=search(l,findmess,name); if(p) printf(tttt查找结果n); printf(-n); printf(%s-%sn,p-data.num,p-data.name); if(h8&h0&sdata.zaotui+; else if(h14&h0&sdata.zaotui+; else printf(休息时间n); else printf(n没有找到该职工!); else printf(n输入错误!n); void Qur2(Link l) /* 职工下班录入功能 */ int c; char findmess20; Node *p; int

7、h, s, y, d, mi; char str20= , m4, w4; time_t timep; time(&timep); strcpy(str,ctime(&timep); printf(%sn,str); sscanf(str,%s %s %d %d:%d:%d %d, w, m, &d, &h, &s, &mi, &y); printf(%d:%d:%dn, h, s, mi); if(!l-next) printf(n提示:没有资料可以查询!n); return; printf(n1按工号录入:n); printf(n2按姓名录入:n); printf(n请选择序号:n); s

8、canf(%d,&c); if(c=1)/* 工号 */ printf(请你输入要查找的工号:); scanf(%s,findmess); p=search(l,findmess,num); if(p) printf(tttt录入结果n); printf(-n); if(h8&h0&sdata.zaotui+; else if(h14&h0&sdata.zaotui+; else printf(休息时间n); else printf(n没有找到该职工!); else if(c=2) /* 姓名 */ printf(请你输入要查找的姓名:); scanf(%s,findmess); p=sear

9、ch(l,findmess,name); if(p) printf(tttt查找结果n); printf(-n); printf(%s-%sn,p-data.num,p-data.name); if(h8&h0&sdata.zaotui+; else if(h14&h0&sdata.zaotui+; else printf(休息时间n); else printf(n没有找到该职工!); else printf(n输入错误!n); void find(Link l) int c; char findmess20; Node *p; if(!l-next) printf(n提示:没有资料可以查询!

10、n); return; printf(n1按工号查询:n); printf(n2按姓名查询:n); printf(n请选择序号:n); scanf(%d,&c); if(c=1)/* 工号 */ printf(请你输入要查找的工号:); scanf(%s,findmess); p=search(l,findmess,num); printf(%s-%s-%d-%dn,p-data.name,p-data.num,p-data.chidao,p-data.zaotui); else if(c=2) /* 姓名 */ printf(请你输入要查找的姓名:); scanf(%s,findmess);

11、 p=search(l,findmess,name); printf(%s-%s-%d-%dn,p-data.name,p-data.num,p-data.chidao,p-data.zaotui); /删除职工板块/void Del(Link l) int c; char a; Node *p,*r,*p1; char findmess20; if(!l-next) printf(n没有资料可以删除!n); return; printf(n 1按工号删除); printf(n 2按姓名删除); printf(n请选择序号:n); scanf(%d,&c); if(c=1) printf(请你

12、输入要删除的工号:); scanf(%s,findmess); getchar(); printf(是否将全部此工号的都删除?(y/n); scanf(%c,&a); if(a=y) p=search(l,findmess,num); if(p) while(p1!=NULL) p=search(l,findmess,num); r=l; while(r-next!=p) r=r-next; /删除节点r/ r-next=p-next; p1=search(l,findmess,num); free(p); printf(n提示:该职工已经成功删除!n); else printf(没有该职工的

13、信息n); if(a=n) p=search(l,findmess,num); if(p) r=l; while(r-next!=p) r=r-next; /删除节点r/ r-next=p-next; free(p); printf(n提示:该职工已经成功删除!n); else printf(没有该职工的信息n); else if(c=2) printf(请你输入要删除的姓名:); scanf(%s,findmess); p=search(l,findmess,name); if(p) r=l; while(r-next!=p) r=r-next; r-next=p-next; free(p)

14、; printf(n提示:该职工已经成功删除!n); bc=1; else printf(没有该职工的信息n); /修改职工板块/void Modify(Link l) Node *p; char findmess20; if(!l-next) printf(n=提示:没有资料可以修改!n); return; printf(请你输入要修改的职工工号:); scanf(%s,findmess); p=search(l,findmess,num); if(p) printf(请你输入新职工工号:,p-data.num); scanf(%s,p-data.num); printf(请你输入姓名:);

15、 scanf(%s,p-data.name); printf(n=提示:资料修改成功!n); bc=1; else printf(n没有找到该职工!); void Disp(Link l) Node *p; p=l-next; if(!p) printf(n没有资料可以显示!n); return; printf(tttt显示结果n); printf(-n); printf(工号-姓名-迟到-早退); printf(n); while(p) printf(%s-%s-%d-%dn,p-data.num,p-data.name,p-data.chidao,p-data.zaotui); p=p-n

16、ext; printf(n); /保存/void Save(Link l) FILE* fp; Node *p; int flag=1,count=0; fp=fopen(in.txt,w); if(fp=NULL) printf(n重新打开文件时发生错误!n); exit(1); p=l-next; while(p) fprintf(fp,%s %s %d %dn,p-data.num,p-data.name,p-data.chidao,p-data.zaotui); p=p-next; count+; if(flag=1) printf(n文件保存成功.(有%d条记录已经保存.)n,cou

17、nt); bc=0; fclose(fp); /主函数/int main() Link l;/* 链表 */ FILE *fp; /* 文件指针 */ int c,j; int n=0;/计数导入内存的数目/ char password20,mima20=1234560,mima220=1234560,x; Node *p,*r,*p1; l=(Node*)malloc(sizeof(Node); /创建一个空链表/ l-next=NULL; r=l; fp=fopen(123.txt,r); if(fp=NULL) printf(n文件不存在); while(!feof(fp) p=(Nod

18、e*)malloc(sizeof(Node); fscanf(fp,%s %s %d %d,p-data.num,p-data.name,&p-data.chidao,&p-data.zaotui); p-next=l-next; l-next=p;/* 将该接点挂入连中 */ n+; fclose(fp); /* 关闭文件 */ printf(记录导入完毕,共导入%d条记录.n,n); printf(职工信息如下n); while(p!=NULL) printf(%s-%sn,p-data.name,p-data.num); p=p-next; while(1) menu(); /菜单/ p

19、rintf(请你选择操作:); scanf(%d,&c); if(c=0) if(bc=1) getchar(); printf(n资料已经改动,将改动保存到文件中n); Save(l); printf(n你已经退出系统!n); break; switch(c) case 1: system(cls); while(1) printf(请输入密码(正确为123456); scanf(%s,password); getchar(); if(strcmp(password,mima)=0) printf(是否修改密码?(y/n)n); scanf(%c,&x); if(x=y) printf(输入

20、新密码n); scanf(%s,mima); getchar(); while(1) printf(要删除请再输入密码:n); scanf(%s,password); getchar(); if(strcmp(password,mima)=0) Del(l); break; break; else printf(密码错误n); break;/* 删除职工 */ case 2: system(cls); while(1) printf(输入录入方式的数字(1 上班录入。2 下班录入):); scanf(%d,&j); if(j2) printf(输入错误,请重新输入n); else break; if(j=1) Qur1(l); if(j=2) Qur2(l); break;/* 职工资料录入*/ case 3: system(cls); find(l); break; case 4: system(cls); while(1) printf(请输入密码(正确为123456); scanf(

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

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