宿舍考勤管理系统设计报告
- 格式:docx
- 大小:446.02 KB
- 文档页数:41
学生考勤管理系统课程设计报告
目录
1设计内容及要求.........................................3
1.1设计内容.....................................................3
1.2设计任务及具体要求...........................................3
2概要设计.........................................................4
2.1该系统的功能简介.............................................4
2.2 总体程序框图.................................................4
2.3各个模块之间的主要关系........................................5
3 设计过程或程序代码............................................5
3.1各个模块的程序流程图及运行界面................................5
3.2对关键代码加以分析说明.......................................10
4程序调试分析.....................................................14
5小结.............................................................17
致谢...........................................................17
参考文献...........................................................17
附:源程序..........................................................18
1 设计内容及要求
1.1设计内容
学生考勤信息记录了学生的缺课情况,它包括:缺课日期、第几节课(连续用begin-end的形式表示)、课程名称(课程名称中不会出现空格)、学生姓名、缺课类型(迟到、早退、请假及旷课)。
1.2设计任务及具体要求
任务:(1)给出软件结构,说明各模块的功能。
(2)设计相关的类,并说明该类的作用。特别要用图形说明类之间的继承关系。
(3)编写代码
具体要求:(1)定义相关的数据,比如:
学生学号
学生姓名
课程名称
上课时间
到课时间
出勤状态 [旷课/病假/事假/迟到/早退]
(2)能够进行以下操作:
A.能够对数据进行增、删、改、查操作。
B.能够按学号顺序列出某一课程的出勤状况
2 概要设计
2.1系统的功能简介
考勤管理系统,有以下功能:
(1).录入学生的缺课记录:从键盘输入数据(提示:为避免重复从键盘输入数据,测试时可将数据存储在文件中,利用输入重定向功能读入),输入格式为:缺课日期 第几节课 课程名称学生姓名 缺课类型 每行一条纪录。 例如:
2019-04-29 2-4 中国近现代文学史 李云龙 迟到 2019-04-28 2-4 大学生社交礼仪
(2).修改某个学生的缺课记录:可以对缺课纪录的任意部分进行修改,然后显示一下修改后的纪录。
(3).查询某个学生的缺课情况:查询结果按照日期升序排序,同一天内按照所缺课程的时间升序排序。
(4).统计某段时间内(以天为单位),旷课学生姓名及旷课节数,查询结果先按旷课节数降序排序,旷课节数相同的学生按姓名升序排序;
(5).统计某段时间内,有学生旷课的课程及旷课人次,按旷课人次由多到少排序,旷课人次相同的课程按课程名称升序排序。
2.2 总体程序框图
2.3各个模块之间的主要关系
本程序用结构体新定义一种数据类型,系统包含一个主函数和6个子函数(insert(),check(),rivise(),Delete(),output(),deleteallchain()),6个子函数分别用来插入、查询、修改、删除、输出、收回动态分配的空间,在主函数中通过调用子函数来实现所需功能。
3 设计过程或程序代码
3.1各个模块的程序流程图及运行界面 修改某学生的缺课查询某学生的缺课信息
统计某段时间内旷课学生姓名及旷课节数
统计某段时间内,有学生旷课的课程及旷课人次
录入学生的缺课信学生考勤管理系统
录入缺课学生的姓名、缺课日期、缺课节次、缺课课程名称、缺课类型
修改某学生的缺课日期、缺课节次、缺课课程名称、缺课类型
查询某学生的缺课日期、缺课节次、缺课课程名称、缺课类型
按时间升序显示旷课学生姓名及旷课节数
按时间升序显示有学生旷课的课程及旷课人次
学生考勤管理系统中四个类的类层次图为:
图2 学生考勤管理系统中中四个类的类层次图
学生考勤管理系统中各功能模块的实现:
图3 学生考勤管理系统中菜单函数的功能图
1、 学生缺课信息录用功能模块:
Time类
Xinxi类
qstu类 qkechen类
菜单
录入学生的缺课信息 查询某学生的缺课信息 修改某学生的缺课信息 统计某段时间内,有学生旷课的课程及旷课人次 统计某段时间内旷课学生姓名及旷课节数
图4
学生缺课信息录入的功能
2、 修改某学生缺课信息功能的模块图
图5 学生考勤管理系统修改学生缺课信息功能图
学生缺课信息录用功能 录入学生缺课节次 录入学生缺课日期
录入学生缺课课程名称
录入缺课学生姓名
录入学生缺课类型
修改某学生的缺课日期
修改某学生的缺课课程
修改某学生的缺课类型 修改某学生缺课信息功能 修改某学生的缺课节次
3 查询某学生缺课信息功能图:
图6 学生考勤管理系统查询学生缺课信息功能图
4、 统计某段时间内旷课学生姓名及旷课节数功能模块:
图7统计某段时间内旷课学生姓名及旷课节数功能图
5、统计某段时间内,有学生旷课的课程及旷课人次功能模块
输入要查询的学生姓名
统计某段时间内旷课学生姓名及旷课节数
显示某段时间内旷课学生姓名及旷课节数
返回菜单 查询某学生缺课信息功能
统计某段时间内旷课学生姓名及旷课节数功能
统计某段时间内,有学生旷课的课程及旷课人次功能
统计某段时间内,有学生旷课的课程及旷课人次
返回菜单 显示某段时间内,有学生旷课的课程及旷课人次 显示要查询的学生缺课信息
继续查询或返回菜单
图8 统计某段时间内,有学生旷课的课程及旷课人次功能图
Tine -year:int
-month:int
-day:int
+time()
+~time()
Xinxi
-name[20]:char
-kechen[10]:char
-jieci[3]:char
- queke[10]:char
-tm[3]:char
-tiaoshu:int=0
+xinxi()
+~xinxi()
+setname(n:char*):void
+settime(y:int,
m:int,d:int):void
+setqklx(qk: char*):
void
+setjieci(jc:
char*):void
+setkechen(kc:
char*):void
+getname():char*
+getqklx():char*
qkechen
-renci:int
-kcshu:int=0
+qkechen()
+~qkechen()
+getrc(st1[]:xinxi,n:int ,j:int):int
+qkn[20]:char qstu
-jieshu:int
-qst:int
+qstu()
+~qstu()
+print(st1:xinxi &):void
+getjs( st1[]:xinxi,n:int,
j:int):int
+setjs(js:int=0):int
+qstn[20]:char 基类
派生类
派生类 派生类