青岛理工大学
《C语言程序设计》
题目 职工考勤管理程序
指导教师:
姓名:
学号:
班级:
专业: 计算机工程
地点: 计算机工程学院机房
时间: 2014.6.30 至 2014.7.4
一、内容
此系统以对职工考勤为背景,提供对职工信息、上下班时间的录入、显示、查询、删除等功能。具体功能实现如下:
1、 职工信息新建:实现职工工号、姓名、顺序号、上下班时间的录入功能,并能将其以文件形式加以保存。
2、 考勤信息浏览:实现对全体职工所投的的考勤信息的浏览功能。
3、 查询功能:实现按工号或姓名查询职工一周的上下班时间的功能。
4、 删除功能:实现对职工考勤信息的删除管理。
5、 系统以菜单方式工作,界面清晰,易于操作。
二、上机环境
操作系统:windows xp/8.1
开发工具:vc6.0
三、函数调用关系图
四、各函数功能说明
对每个函数功能加以说明,说明该函数主要实现了什么内容。
例如:
1. main() 主函数
2. void input(); 录入函数
3. void display(); 显示函数
4. void search0(); 查函数
5. void del(); 删除函数
五、算法描述或流程图(或者进行描述,或者绘出流程图,例子见下)
主函数
欢迎界面程序 | |||||
主菜单 | |||||
输入要选择的选项前的序号,给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<n for循环 i=0; fread读取文件,printf输出读取到的文件 i++; |
查询函数
定义局部变量 |
打开文件 |
Fseek查询文件的末尾,计算n(结构体个数) |
Rrewind将指针指向文件开头 |
i<n 结构体sizeof for循环 i=0; fread读取文件,printf输出读取到的文件 i++; |
读取显示结束后,跳出循环,在fclose关闭文件 |
删除函数
定义局部变量 |
打开文件 |
Fseek查询文件的末尾,计算n(结构体个数) |
Rrewind将指针指向文件开头 |
i<n for循环 i=0; fread读取文件,遍历结构体数组,到信息并删除 i++; |
读取显示结束后,跳出循环,在fclose关闭文件 |
六、程序运行效果图;
欢迎界面
主菜单
录入考勤信息
显示考勤信息
查询考勤信息
删除考勤信息
删除考勤信息成功
七、总结
通过这次做C语言课设,我发现这学期在老师那学的只是一些皮毛而已。编程的知识博大精深,还有许许多多的函i数我都不知j道,不会用,在今后自己还要不断i的学习。
通过这几天做课设,我体会到这个过程是艰辛并快乐着的,这个过程中充满了编程的乐趣。
每次为如何把实际中的问题转化为计算机可以识别的语言而苦恼、烦躁,不停的在图书馆和网上查自己需要的资料,可是一旦自己把程序编出来了,并在计算机上运行通过,自己心里又是快乐的,有一种巨大的成就感回荡在心头,把坐在电脑前几个小时的苦和累都忘了。这次课设,是我自己第一次靠自己编出来的一个完整的程序,我会把这个程序一直的保存着,随着我今后在编程方面的学习加深,我会自己慢慢的改进它,让它见证我的成长历程。总言而之,这几天做课设我过得非常的充实,也让我学习到了很多。
八、参考文献
[1] 李春葆等.C语言程序设计.清华大学出版社,2011
[2] 谭浩强.C程序设计(第三版).清华大学出版社,2005
九、程序清单
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<conio.h> //头文件声明
#define N 50
void input();
void display();
void search();
void del(); //定义函数
struct worker //结构体变量声明
{
char no[10];
char name[10];
int number;
char go[14];
char back[14];
};
struct worker fl[N]; //定义结构体数组
int n;
int main()
{
int x;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论