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

上传人:b****2 文档编号:2249536 上传时间:2022-10-28 格式:DOCX 页数:11 大小:36.45KB
下载 相关 举报
c语言课程设计职工考勤管理系统.docx_第1页
第1页 / 共11页
c语言课程设计职工考勤管理系统.docx_第2页
第2页 / 共11页
c语言课程设计职工考勤管理系统.docx_第3页
第3页 / 共11页
c语言课程设计职工考勤管理系统.docx_第4页
第4页 / 共11页
c语言课程设计职工考勤管理系统.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

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

《c语言课程设计职工考勤管理系统.docx》由会员分享,可在线阅读,更多相关《c语言课程设计职工考勤管理系统.docx(11页珍藏版)》请在冰豆网上搜索。

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

c语言课程设计职工考勤管理系统

青岛理工大学

《C语言程序设计》

 

题目职工考勤管理程序

 

指导教师:

姓名:

学号:

班级:

专业:

计算机工程

地点:

计算机工程学院机房

时间:

一、内容

此系统以对职工考勤为背景,提供对职工信息、上下班时间的录入、显示、查询、删除等功能。

具体功能实现如下:

1、职工信息新建:

实现职工工号、姓名、顺序号、上下班时间的录入功能,并能将其以文件形式加以保存。

2、考勤信息浏览:

实现对全体职工所投的的考勤信息的浏览功能。

3、查询功能:

实现按工号或姓名查询职工一周的上下班时间的功能。

4、删除功能:

实现对职工考勤信息的删除管理。

5、系统以菜单方式工作,界面清晰,易于操作。

二、上机环境

操作系统:

windowsxp/

开发工具:

三、函数调用关系图

 

四、各函数功能说明

对每个函数功能加以说明,说明该函数主要实现了什么内容。

例如:

1.main()主函数

2.voidinput();录入函数

3.voiddisplay();显示函数

4.voidsearch0();查找函数

5.voiddel();删除函数

五、算法描述或流程图(或者进行描述,或者绘出流程图,例子见下)

主函数

欢迎界面程序

主菜单

输入要选择的选项前的序号,给x赋值

Switch()

Case条件

Case1

Case2

Case3

Case4

Case5

Defult

Input()

Display()

Search0()

Del()

Exit()

 

录入函数

定义局部变量i,x

打开文件

打不开文件

(x!

=’n’)

Do-while循环

Scanf输入职工信息进入结构

Fwrite把输入的职工信息写入文件

输入结束标记x(是n就结束,否则继续输入),判断是否跳出循环

 

输出“打不开文件”

 

显示函数

定义局部变量i

打开文件

Fseek查询文件的末尾,计算n

Rewind将指针指向文件开头

i

for循环

i=0;

fread读取文件,printf输出读取到的文件

i++;

查询函数

定义局部变量

打开文件

Fseek查询文件的末尾,计算n(结构体个数)

Rrewind将指针指向文件开头

i

for循环

i=0;

fread读取文件,printf输出读取到的文件

i++;

读取显示结束后,跳出循环,在fclose关闭文件

 

删除函数

定义局部变量

打开文件

Fseek查询文件的末尾,计算n(结构体个数)

Rrewind将指针指向文件开头

i

for循环

i=0;

fread读取文件,遍历结构体数组,找到信息并删除

i++;

读取显示结束后,跳出循环,在fclose关闭文件

六、程序运行效果图;

欢迎界面

 

主菜单

 

录入考勤信息

 

显示考勤信息

 

查询考勤信息

删除考勤信息

 

删除考勤信息成功

 

七、总结

通过这次做C语言课设,我发现这学期在老师那学的只是一些皮毛而已。

编程的知识博大精深,还有许许多多的函i数我都不知j道,不会用,在今后自己还要不断i的学习。

通过这几天做课设,我体会到这个过程是艰辛并快乐着的,这个过程中充满了编程的乐趣。

每次为如何把实际中的问题转化为计算机可以识别的语言而苦恼、烦躁,不停的在图书馆和网上查找自己需要的资料,可是一旦自己把程序编出来了,并在计算机上运行通过,自己心里又是快乐的,有一种巨大的成就感回荡在心头,把坐在电脑前几个小时的苦和累都忘了。

这次课设,是我自己第一次靠自己编出来的一个完整的程序,我会把这个程序一直的保存着,随着我今后在编程方面的学习加深,我会自己慢慢的改进它,让它见证我的成长历程。

总言而之,这几天做课设我过得非常的充实,也让我学习到了很多。

八、参考文献

[1]李春葆等.C语言程序设计.清华大学出版社,2011

[2]谭浩强.C程序设计(第三版).清华大学出版社,2005

九、程序清单

#include<>

#include<>

#include<>

#include<>入职工考勤信息\n");

printf("\t\t\t\t2.显示职工考勤信息\n");

printf("\t\t\t\t3.查找职工考勤信息\n");

printf("\t\t\t\t4.删除职工考勤信息\n");

printf("\t\t\t\t5.退出并保存\n");

printf("请输入要选择选项前的序号:

");

scanf("%d",&x);

getchar();

system("cls");

switch(x)

{

case1:

input();break;

case2:

display();break;

case3:

search();break;

case4:

del();break;

case5:

exit(0);

default:

gotohaha;

}

}while

(1);

return0;

}

 

voidinput()xt","ab+"))==NULL)

if((fp=fopen("C:

\\职工考勤信息管理.txt","wb+"))==NULL)

{

printf("不能建立文件!

\n");

exit(0);

}

printf("\n\t\t\t输入职工考勤信息\n\n");

do

{

printf("输入格式:

职工号\t姓名\t顺序数\t上班时间\t下班时间\n");

printf("考勤信息录入:

");

scanf("%s%s%d%s%s",fl[i].no,fl[i].name,&fl[i].number,fl[i].go,fl[i].back);

fwrite(&fl[i],sizeof(structworker),1,fp);xt","rb+"))==NULL)

{

printf("不能打开文件!

\n");

exit

(1);

}

fseek(fp,0,2);o,fl[i].name,fl[i].number,fl[i].go,fl[i].back);

}

printf("\n\n\t\t按任意键返回主菜单\n\n\t\t");

ch=getch();

}while(!

ch);

fclose(fp);

system("cls");

}

voidsearch()xt","rb+"))==NULL)

{

printf("不能打开文件!

\n");

exit

(1);

}

fseek(fp,0,2);

n=ftell(fp)/sizeof(structworker);

do

{

haha:

printf("\t\t\t考勤信息查询\n");

printf("\t\t\t1.按职工号查询\n");

printf("\t\t\t2.按姓名查询\n");

printf("\t\t\t3.按上班时间查询\n");

printf("\t\t\t4.按下班时间查询\n");

printf("\t\t\t5.返回主菜单\n");

printf("\t\t\t6.退出并保存\n\n");

printf("\t\t\t选择功能选项(输入功能前的数字)\n\n");

printf("\t\t\t");

scanf("%d",&x);

getchar();

system("cls");

for(i=0;i

{

switch(x)

{

case1:

strcpy(s[i],fl[i].no);break;

case2:

strcpy(s[i],fl[i].name);break;

case3:

strcpy(s[i],fl[i].go);break;

case4:

strcpy(s[i],fl[i].back);break;

case5:

gotoap;

case6:

exit(0);

default:

gotohaha;

}

}

do

{

printf("\n\n\t\t\t请输入查询信息:

");

gets(z);

for(i=0;i

if(!

strcmp(s[i],z))

{

k++;

printf("------------------------------------------------------------------------\n");

printf("\t\t职工号\t姓名\t顺序数\t上班时间\t下班时间\n");

printf("\t\t%s\t%s\t%d\t%s\t%s\n",fl[i].no,fl[i].name,fl[i].number,fl[i].go,fl[i].back);

printf("------------------------------------------------------------------------\n");

}

if(k==0)

{

printf("\n\t\t\t没有此职工信息!

!

!

");

}

printf("\n\n\n\t按回车键继续查询,按N停止查询:

");

ch=getch();

}while(ch!

='N'&&ch!

='n');

system("cls");

}while

(1);

fclose(fp);

ap:

system("cls");

}

 

voiddel()xt","rb"))==NULL)

{

printf("\t>>不能创建文件\n");

exit(0);

}

fseek(fp,0,2);

n=ftell(fp)/sizeof(structworker);

fclose(fp);

fp=fopen("C:

\\职工考勤信息管理.txt","wb");

printf("\n");

printf("\t\t\t考勤信息删除\n");

printf("\t\t\t\n\n");

printf("\t\t\t1.按职工号删除\n");

printf("\t\t\t2.按姓名删除\n");

printf("\t\t\t3.按上班时间删除\n");

printf("\t\t\t4.按下班时间删除\n");

printf("\t\t\t选择功能选项(输入功能前的数字)\n\n");

printf("\n\t\t\t");

scanf("%d",&l);

getchar();o);break;

case2:

strcpy(st,fl[i].name);break;

case3:

strcpy(st,fl[i].go);break;

case4:

strcpy(st,fl[i].back);bre

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 其它

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

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