C++学生考勤系统(含源代码)

上传人:公**** 文档编号:506295455 上传时间:2023-04-10 格式:DOC 页数:21 大小:93KB
返回 下载 相关 举报
C++学生考勤系统(含源代码)_第1页
第1页 / 共21页
C++学生考勤系统(含源代码)_第2页
第2页 / 共21页
C++学生考勤系统(含源代码)_第3页
第3页 / 共21页
C++学生考勤系统(含源代码)_第4页
第4页 / 共21页
C++学生考勤系统(含源代码)_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《C++学生考勤系统(含源代码)》由会员分享,可在线阅读,更多相关《C++学生考勤系统(含源代码)(21页珍藏版)》请在金锄头文库上搜索。

1、.C+语言程序设计课程设计报告书题目:班级:学号:指导教师:周期:以下由验收老师填写成绩:年 月 日-.一、课程设计的目的与要求一课程设计目的与任务C+作为一门程序设计语言,其学习的最终目的是应用,作课程设计可以让我们更好的理解C+语言的精髓,学习掌握C+的语言流程,初步了解编程的思路,并且有重点的练习我们C+中的类、对象等模块的,使我们对这些重中之重的语言模块掌握的更加灵活可以实现我们的一些初步的程序设计要求也可以提高我们的实践能力;在课程设计中我们也应该就产生的实际开发问题象老师请教学习,以最好的最高的水准完成设计任务。二题目要求考勤信息记录了学生的缺课情况,它包括:缺课日期、第几节课、课

2、程名称、学生、缺课类型迟到、早退、请假及旷课。试设计一考勤管理系统,使之能提供以下功能:1录入学生的缺课记录; 2修改某个学生的缺课记录; 3查询某个学生的缺课情况; 4统计某段时间,旷课学生及旷课次数,按旷课次数由多到少排序; 5统计某段时间,有学生旷课的课程及旷课人次,按旷课人次由多到少排序; 6系统以菜单方式工作。二、设计正文1、系统分析考勤信息记录了学生的缺课情况,它包括:缺课日期、第几节课、学生、缺课类型迟到、早退、请假及旷课。设计一考勤管理系统,使之能提供以下功能:1录入学生的缺课记录:从键盘输入数据,输入格式为:学生、缺课日期、第几节课、课程名称、缺课类型。例如:三2008-04

3、-29 3-4 C+程序设计实验迟到四2008-04-28 3-4 C+程序设计旷课2修改某个学生的缺课记录:可以对缺课纪录的任意部分进行修改,然后显示一下修改后的纪录。3查询某个学生的缺课情况4统计某段时间以天为单位,旷课学生及旷课节数,查询结果先按旷课节数降序排序5统计某段时间,有学生旷课的课程及旷课人次,按旷课人次由多到少排序6系统以菜单方式工作。2、功能详细描述及框图这是一个小型的学生考勤系统,它使用类来实现,充分表达面向对象的程序设计特点。它可以实现的主要功能有:录入学生的缺课记录; 修改某个学生的缺课记录;查询某个学生的缺课情况; 统计某段时间,旷课学生及旷课次数,按旷课次数由多到

4、少排序; 统计某段时间,有学生旷课的课程及旷课人次,按旷课人次由多到少排序;框图:3、主要功能逻辑过程和实现算法此程序用到了大模块,分别是:主菜单模块;录入模块;修改模块;查询模块;查找人数模块;查找次数,每个模块可以实现不同的功能;1、主菜单模块:对本程序的功能进行说明,然后出现同学通迅录的主界面;2、录入模块:录入学生的缺课记录:从键盘输入数据,输入格式为:学生、缺课日期、第几节课、课程名称、缺课类型。3、查询模块:查询某个学生的缺课情况inname; m.read(char *)&x, sizeof(x); while(!m.eof()/原文件到头结束 if(!strcmp(name,

5、x.getn()cout:x.getn()endl;cout日期:x.getd()endl;cout课时:x.getk()endl;cout课程名称:x.getm()endl;cout缺课类型:x.getl()name;/输入void setd()cinday;/输入日期void setk()cinn;/输入课时void setm()cinkname;/输入课程名称void setl()cinlx;/输入缺课类型char * getn()return name;char * getd()return day; int getk()return n;char * getm()return kna

6、me;char * getl()return lx;void luru()int j, i;student p100;fstream file;file.open(D:学生考勤.txt,ios:in|ios:out);/文件存盘coutj;coutttt请输入j名同学信息:endl;for(i=0;ij;i+) cout:; pi.setn(); cout日期:; pi.setd(); cout课时:; pi.setk(); cout名称:; pi.setm(); cout类型:; pi.setl(); file.write(char *)&pi, sizeof(pi);/写文件cout成功输

7、入同学信息!请返回!endl;file.close();/关闭文件 /查询信息 void chaxun()/查询函数的调用 student x; char name20,z; fstream m; a1:int a=0,flag=0;/ goto语句 m.open(D:学生考勤.txt,ios:in); cout请输入您要查询的同学:name; m.read(char *)&x, sizeof(x); while(!m.eof()/原文件到头结束 if(!strcmp(name, x.getn()cout:x.getn()endl;cout日期:x.getd()endl;cout课时:x.ge

8、tk()endl;cout课程名称:x.getm()endl;cout缺课类型:x.getl()endl;flag=1;break;m.read(char *)&x, sizeof(x);m.close();if(flag=0)cout对不起,您查询的同学无缺课现象,请返回!endl;cout如继续查询请输入Y,否那么按任意键返回z;if(z=Y|z=y)goto a1; /修改函数的调用 void xiugai() /*修改成员函数*/ student l;char xname20, w;fstream xfile;xfile.open(D:学生考勤.txt,ios:in|ios:out);

9、 xfile.read(char *)&l, sizeof(l);/读文件到L里cout请输入您要修改的同学:xname;while(!xfile.eof()/调用EOF判断函数if(!strcmp(xname, l.getn()cout:l.getn()endl;cout日期:l.getd()endl;cout课时:l.getk()endl;cout课程名称:l.getm()endl;cout缺课类型:l.getl()endl; cout确认修改请按Y,否那么按任意键w;if(w=Y|w=y) cout:;l.setn();cout日期:;l.setd();cout课时:;l.setk();cout课程名称:;l.setm();cout缺课类型:;l.setl(); xfile.open(D:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号