C语语言言实实现现大大学学生生考考勤勤管管理理系系统统
程序设计题:大学生考勤系统
1 问问题题描描述述
该系统要求实现一个简单、实用的学生考勤系统程序,主要 能包括考勤数据的新增、删除、修改、查找、统计、排序、输出等
。所有统计数据都要利用文件系统保存,以备系统下次运行时使用。通过此课题,熟练掌握文件、数组、指针的各种操作,以及
一些基本算法的应用。
2 能能要要求求
代码要能提供以下几个基本 能。
(1)考勤数据是由多条数据记录构成,其信息包括:学号 (唯一)、姓名、班级、考勤日期 (由月和日组成)等等。
(2 )数据保存形式:所有信息要以文本或二进制文件保存。
(3 )需要实现的 能
a 新增学生信息数据 (避免重复记录,若在,不可再增加)。
b 查找数据 (可按学号、姓名、考勤日期等查找)。
c 修改学生记录 (可以先查找,再修改)。
d 删除学生记录 (请参考上面修改的处理)。
e 显示学生考勤数据列表 (可显示部分或全部)。
f 排序 (可按学号、姓名、考勤日期等排序)。
g 数据统计 (对考勤数据统计分析,统计完成后,可以通过考勤系统中得出考勤明细表,考勤日报表、考勤汇总表、考勤异常表
,请假汇总表等)。
h 保存数据到文件中并从文件中读入数据。
(4 )界面 能要求:
1) 采用友好的界面,实现一个 能控制菜单。
2) 每次操作都从该菜单选择,利用循环结构使得一次运行程序可进行多次操作。
备备注注::
(1)数据完整性保证。例如:学号和姓名必须严格、规范。
(2 )要求报表格式灵活、形式多样、内容清楚,具体请学生自己构思、设计。
(3 )考勤符号:出 勤√ 旷 课 X 事 假 △ 病 假 ○ 迟 到 + 早 退 �C
(4 )考勤时间段不少于十条。
3 其其他他要要求求
(1)界面美观,交互方便。
(2 )注释详细:每个函数有注释说明 能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。
(3 )程序的层次清晰,可读性强。
(4 )变量、函数命名符合规范。
(5 )如有可能,可使用MFC 等开发工具,实现彩色或图形操作界面。
4 开开发发环环境境
可以选择TC2.0、TC3.0、VC++6.0、vs等开发环境,或者与老师讨论,选择自己熟悉的开发工具与平台。
#include
#include
#include
#define maxsize 15
#define maxnum 1000
typedef struct {
char Student ID[maxsize];
char Name[maxsize];
char Class Number[maxsize];
char Attandance date[maxsize];
char Attandance Result[maxsize];
} student;
student Students[maxnum];
int num = 0;
char buf[maxsize];
/*实现每次输入结束最后输入回车退出的 能,更好的实现与用户的交互 */
void wait for Enter() {
getchar();
getchar();
}
/*为了实现对日期进行排序,我的想法是对于月份,直接用atoi截取出来转化成月份,对于天数,则需要用以
下函数计算*/
int convert(char str[]) {
int i,j,res = 0, cnt = 0;
for (i = strlen(str) - 3; i >= 0; i--) {
if (str[i] >= '0 '&&str[i] <= '9') res *= 10, res += (str[i] - '0 ');
else break;
}
return res;//返