实训报告
学 号:
0224
编 号:
B04731017
教 学 院 计算机 课程名称 大型软件项目实训
专 业 网络工程 班 级 二班 姓 名
何娟
2016 年 9 月 20 日
便、能实时记录学生考勤信息的学生考勤管理系统迫在眉睫。
处理流程和数据流程
人工的考勤系统主要包括请假系统,考勤系统,管理中心,主要供学生,辅导员,任课老师,班主任所使用。
如下为系统流程图:
在请假系统中,学生想要请假需要向辅导员老师写请假条并说明原因,获得辅导员的同意才能请假成功,否则失败。
而学生的请假情况记录在请假条的存根上,在向任课老师请假时也需自己或请同学向老师出示请假条并说明原因,由任课老师在学生名单上记录为“请假”。
辅导员、任课老师、学生只有通过查询请假条的存根或考勤表才可知道请假情况。
局限性
该系统会浪费很多的时间而且会很麻烦,当学生需要请假时必须找到辅导员写请假条才行,另外课堂上由于是由任课老师通过点名的方式考勤所以会造成混乱不清更问题。
因此,开发一个新的高校学生考勤管理系统迫在眉睫,同时,我们的系统也应运而生。
3.功能需求
这是一个记录学生上课情况的一个考勤系统,方便记录、查询、统计学生考勤信息。
学生考勤管理系统用于记录学生的缺课情况,它包括:缺课日期、第几节课、课程名称、学生姓名、学号、缺课类型(迟到、早退、请假及旷课)。
优化界面使学生使用更加便捷,在保证信息共享的同时又注重了信息的安全性而不被篡改。
该系统除了用于学生课堂的考勤,还可用于学生出早操情况的考核,开会出勤情况的考核等。
而且可以进一步开发,与教务处学生成绩数据库相连接,将考勤结果作为平时成绩或期末成绩及评优的参考。
另外该系统还可作为请假系统代替传统写请假条请假的问题。
在安全方面,登陆系统时,需验证身份和密码,只有通过验证的身份才能进入系统进行相关的操作。
系统间信息的传递也需要进行安全设置,以防止学生的考勤信息被恶意篡改。
主要分为6大模块,分为录入学生的缺课记录、修改某个学生的缺课记录、查询某个学
renci++;
return renci;
}
etname(name);
cout << "请输入课程名称" << endl;
cin >> kechen;
st1[q].setkechen(kechen);
cout << "请输入缺课日期" << endl;
cin >> y >> m >> d;
st1[q].settime(y, m, d);
cout << "请输入缺课类型" << endl;
cin >> queke;
st1[q].setqklx(queke);
cout << "请输入缺课节次" << endl;
cin >> jieci;
st1[q].setjieci(jieci);
cout << "是否还要继续输入:(y/n)" << endl;
cin >> a;
} while (a == 'y');
return q + 1;
}
etname()) == 0)
do{
a[j] = i;
cout << "1.修改日期2.修改节次3.修改课程名称4.修改缺课类型" << endl;
cout << "请输入要选择的数值(1,2,3,4)" << endl;
int b;
cin >> b;
if (b == 1)
{
cout << "请输入新日期" << endl;
cin >> y >> m >> d;
st1[i].settime(y, m, d);
}
else if (b == 2)
{
cout << "请输入新节次" << endl;
cin >> jieci;
st1[i].setjieci(jieci);
}
else if (b == 3)
{
cout << "请输入新课程名称" << endl;
cin >> kechen;
st1[i].setkechen(kechen);
}
else if (b == 4)
{
cout << "请输入新缺课类型" << endl;
cin >> queke;
st1[i].setqklx(queke);
}
flgh = 1; j++;
} while (b<1 || b>4);
if (flgh == 0)
{
cout << "没有你要找的学生姓名,请重试要退出请按0" << endl;
cin >> k;
}
else
{
cout << "还要继续吗(1\0)退出请按0" << endl;
cin >> k;
}
}
for (int i = 0; i<j; i++)
{
h = a[i];
xiansi(st1[h]);
}
}
二.项目调试与测试:
1.系统调试
程序编写完成后,我进行了程序调试。
调试过程中,出现了以下问题:当录入学生缺课信息时,出现了无法退出录入函数的情况,主要原因是输入函数中while循环语句没有设置跳出循环的条件。
除此之外,修改某学生缺课信息时,如果没有该学生的缺课信息,系统没有提示要用户没有该学生信息,也没有建议用户重新输入要修改的学生姓名。
由此我发现了该系统修改学生缺课信息的不足。
于是,我对修改函数进行了修改与完善。
在该函数中,我设置了if
这是开启系统时的进入界面,用户可以根据要求选择不同的菜单项,输入对应的数字即可,然后再根据提示进行信息录入。
2.这是录入学生的缺课记录界面
这个是用来录入学生的缺课记录,用来实现录入缺课信息功能,输入学生的姓名、缺课课程名、缺课日期、缺课类型以及缺课节次等信息用来录入。
3.这是录入学生的缺课记录界面
这是修改缺课记录功能,要修改对应的记录,就输入相应的名字,以供根据姓名用来查找对应的缺课记录信息,找到对应的记录之后,就可以修改缺课记录了。
4.统计旷课学生姓名及旷课节数界面
这是用来显示所有缺课记录的功能,它是针对性的显示,只显示所有缺课记录的学生姓名及旷课节数。
5.统计旷课课程及旷课人次界面
成绩评定表。