段雅云任务书模板.doc
文本预览下载声明
运城学院计算机科学与技术系
C课程设计任务书
设计题目 考勤系统设计 学生姓名 段雅云 学号 2012100541 班级 1205班 完成设计题目中的工作
主要完成: 1、考勤信息的录入;
2、考勤统计(如按月对每个部门员工的迟到情况进行统计)。
参与设计编程:
1、主要数据输入(数据以文件形式存储)
对职工进行编号、上下班时间的输入
2、基本功能:
1)对员工的迟到情况进行统计;
2)对员工的旷工情况进行统计;
3)对员工的早退情况进行统计;
4)显示员工的所有信息。
3、程序如下:
Getjudge函数
void getjudge(char wh[])
{
char *p;
p=wh;
rewind(stdin);
printf(\n请输入职工号(1001~1010):);
while(1){
rewind(stdin);
gets(wh);
rewind(stdin);
if((*p==1*(p+1)==0*(p+2)==0*(p+3)=0*(p+3)=9)||(*p==1*(p+1)==0*(p+2)==1*(p+3)=0))
{
printf(\n合法输入。\n);
break;}
else printf(\n\n不合法输入,请重新输入职工号:);
}
return;
}
Monuprecord函数
void monuprecord()
{
char num[20];
time_t rawtime;
struct tm * timeinfo;
time ( rawtime );
timeinfo = localtime ( rawtime );
asctime (timeinfo);
printf ( \n现在时间为:%4d-%02d-%02d %02d:%02d:%02d\t星期:%d\n,1900+timeinfo-tm_year,1+timeinfo-tm_mon,timeinfo-tm_mday,timeinfo-tm_hour,timeinfo-tm_min,timeinfo-tm_sec,timeinfo-tm_wday);
nowtime.year=1900+timeinfo-tm_year;
nowtime.month=1+timeinfo-tm_mon;
nowtime.day=timeinfo-tm_mday;
nowtime.weekday=timeinfo-tm_wday;
nowtime.hour=timeinfo-tm_hour;
nowtime.minute=timeinfo-tm_min;
p1=head;
rewind(stdin);
getjudge(num);
if((nowtime.hour==8nowtime.minute==0)||nowtime.hour8)
printf(\n正常上班。\n);
Late函数
if((nowtime.hour==8nowtime.minute=0nowtime.minute=5))
{
printf(\n上班迟到\n。);
while(strcmp(num,p1-number)!=0p1-next!=NULL)
p1=p1-next;
if(strcmp(num,p1-number)==0){
(p1-late)++;
}
}
Monuprecord函数
if((nowtime.hour==8nowtime.minute5)||nowtime.hour8)
{
printf(\n旷工一次。\n);
while(strcmp(num,p1-number)!=0p1-next!=NULL)
p1=p1-next;
if(strcmp(num,p1-number)==0)
{
(p1-notwork)++;
}
}
writenflag=1;
printf(\n考勤信息已录入,按任意键返回...);
getch();
system(cls);
}
Mondownrecord函数
void mondownrecord()
{
char num[20];
time_t rawtime;
struct tm * timeinfo;
time ( rawtime );
timeinfo = localtime ( rawtime );
asctime (timeinfo);
printf ( \n现在时间为:%4d-%02d-%02d %02d:%02d:%02d\t星期:%d\n\n,1900+timeinfo-tm_year,1+timeinfo-tm
显示全部