目录之答禄夫天创作
时间:二O二一年七月二十九日
1、需求与功能分析3 2、系统总体框架4 3、模块设计与分析4 4、类的设计与分析6 5、特色算法分析7 6、功能测试10
7、存在的缺乏与对策 13 8、法式源代码 14 9、使用说明23 10、参考文献23
1、 需求与功能分析
(1)需求分析
学生成果管理系统主要提供成果查询,方便管理的网上的信息查阅平台,学生可以通过该系统查阅与自己相关信息,检查留言、提交留言.教师可以通过成果管理系统查阅学生成果信息,教师信息,检查教师留言、学生留言、提交留言、留言的管理等相关
时间:二O二一年七月二十九日
时间:二O二一年七月二十九日
把持.系统管理员可以实现以上的所有功能,还有对学生的添加、删除、修改、教师的添加、删除、修改,数据库的备份、数据库的还原等相关把持.
根据开发要求,学生成果管理系统主要应用于教育系统,完成对日常的教学、教务、教师以及学生的计算机化的管理.开发学生成果管理系统可使学院教职员工减轻工作压力,比力系统地对教务、教学上的各项服务和信息进行管理,同时,可以减少劳动力的使用,加快查询速度、加强管理,以及国家各部份关于信息化的法式,使各项管理更加规范化.目前,学校工作繁杂、资料重多.目前,管理信息系统已进入高校,但还未普及,而对学生成果管理来说,目前还没有一套完整的、统一的系统.因此,开发一套适和年夜众的、兼容性好的系统是很有需要的.
(2)功能分析 “学生成果管理系统”包括九个模块:输入学生资料,输出学生资料,学生姓名按顺序排列,添加学生资料,按姓名查找,删除该学生资料,查找并显示学生资料,按姓名查找,修改该学生资料,从文件中读入数据,贮存学生资料并退出系统.这九个模块既相互联系又相互自力.
本系统根据学生成果管理的需要,而建立一个“学生成果管理系统”,以方便对成果的各项管理把持.本系统能对成果进行输入和输出;能按姓名对学生进行排序,并显示学生资料、成果等,不外得以系统输入学生资料、成果为前提;能添加学生成果资料;能根据学生的姓名来查询该学生的成果资料,并修改或是删除该学
时间:二O二一年七月二十九日
时间:二O二一年七月二十九日
生信息;能够从文件中读取学生信息,而且添加到系统中;能把对系统所进行的把持进行保管,以及时更新系统中的数据.
2、 系统总体框架
主 菜 单 输入学生资料模块 输出学生资料模块 按学生姓名进行排列模块 添加按姓学生 名查资料找,删模块 除该学生资料 查找并显示学生资料模块 按姓名查找,修改学生资料模块 从文件中读入数据模块 贮存学生资料并退出系统模块 模块 图1
3、模块设计与分析 (1)输入学生资料模块:
主要功能用来对学生的成果进行收集和输入.在学生信息保管在系统中的前提下,成果录入需要输入学生资料,比如班级,学号,姓名.在准确输入学生资料后,就可以对该学生的各科成果进行录
时间:二O二一年七月二十九日
时间:二O二一年七月二十九日
入.该学生各科成果输入胜利后,系统会提示是否继续进行把持,如果想继续输入学生成果就输入y,不想再输入学生成果的话就输入n,再输入n之后,系统返回到主菜单.
(2)输出学生资料模块:
主要功能用来对学生的成果进行输出.在系统已经录入了学生资料成果的前提下,使用该功能可以显示所有学生的信息,资料等等.具体包括学生的班级,学号,姓名和各科成果.在检查学生的资料,成果各方面的信息后,按任意键就可以返回到主菜单.
(3)按学生姓名进行排列模块
主要功能是用来对学生的资料按姓名进行排序.在系统保管学生资料,成果的前提下,使用此功能可以对学生的资料按姓名进行排序,这样就方便查找姓氏相同或是相近的同学的资料. (4)添加学生资料模块
主要功能是用来添加学生资料,成果.如果系统有保管学生资料的情况下,想录入学生成果的话,就不用添加学生资料这模块.如果系统没有保管该学生信息的话,就要使用此模块,在胜利添加学生资料后,就可以对该学生进行其他的把持. (5)按姓名查找,删除该学生资料模块
时间:二O二一年七月二十九日
时间:二O二一年七月二十九日
主要功能是用来删除学生资料.在系统保管学生资料的前提下,想删除某学生的资料,可以输入学生姓名,系统查找该学生资料后,就可以删除.由于学生停学,结业等原因,及时对系统进行更新,删除一些没用的信息,可以使系统更加优化 (6)查找并显示学生资料模块
主要功能是用来查找学生资料.在系统保管了某学生资料的前提下,想要查找该学生资料,可以输入该学生姓名,这样系统就会显示该学生资料和各科成果等信息 (7)按姓名查找,修改学生资料模块
主要功能是用来修改学生资料.在系统保管了某学生资料的前提下,想要查找该学生资料,可以输入该学生姓名,系统就会显示该学生资料和各科成果等信息,这样就可以修改该学生的资料,成果等信息.
(8)从文件中读入数据模块
主要功能是用来从文件中读入学生数据.由于一些资料可以用Word文档或Excel表格输入,故在此模块中增加了导入数据的功能.这样就方便很多,不用把学生资料一个一个添加,节省了很多时间精力.
(9)贮存学生资料并退出系统模块
时间:二O二一年七月二十九日
时间:二O二一年七月二十九日
主要功能是用来贮存学生资料.在对系统进行一系列把持,比如添加、删除、修改学生资料后,对系统的最新把持进行保管,及时更新系统,方便下一次的把持. 4、类的设计与分析
Student类类图
student num cla name byyl jsjzc sjk jsjyy typedef class {
public:
char num[10]; char cla[10]; char name[20]; char byyl[10]; char jsjzc[20]; char sjk[10]; char jsjyy[20]; }Student;
时间:二O二一年七月二十九日
时间:二O二一年七月二十九日
表1 Student类说明表
名称 num cla name byyl jsjzc sjk jsjyy 数据成员 数据成员 数据成员 数据成员 数据成员 数据成员 数据成员 属性 说明 说明学生学号 说明学生班级 说明学生名字 说明学生编译原理成果 说明学生计算机组成成果 说明学生数据库成果 说明学生计算机英语成果 5、特色算法分析
功能:界说菜单函数,通过输出函数显示系统功能.利用switch语句实现多分支选择结构.
算法思路:switch语句的执行流程是:首先计算switch后面圆括号中表达式的值,然后用此值依次与各个case的常量表达式比力,若圆括号中表达式的值与某个case后面的常量表达式的值相等,就执行此case后面的语句,执行后遇break语句就退出switch语句.
流程图:
时间:二O二一年七月二十九日
时间:二O二一年七月二十九日
yes case=1 输入学生资料 no yes case=2 输出学生资料 no yes case=3 按学生姓名进行排列 no yes case=4 添加学生资料 yes case=5 按姓名查找,删除该学生资料 no yes case=6 查找并显示学生资料 no yes case=7 按姓名查找,修改学生资料 no yes case=8 从文件中读入数据 no yes case=0 贮存学生资料并退出系统
时间:二O二一年七月二十九日
时间:二O二一年七月二十九日
代码:
void main() //主函数调用. {
int n=0; for(;;) {
switch(menu()) {
case 1:
cout< 时间:二O二一年七月二十九日 case 4: cout< 时间:二O二一年七月二十九日 名:\"; n=Xiugai(stu,n); system(\"pause\"); break; case 8: cout< 图1 学生成果管理系统主菜单页面 图二 为输入学生资料模块 图三 为输出学生资料模块 时间:二O二一年七月二十九日 时间:二O二一年七月二十九日 图四 按学生姓名进行排列模块 图五 为添加学生资料模块 图六 为按姓名查找,删除该学生资料模块 图七 为查找并显示学生资料模块 图八 为按姓名查找,修改学生资料模块 图九 为从文件中读入数据模块 图十 为贮存学生资料并退出系统模块 7、存在的缺乏与对策 本学生成果管理系统由九个模块组成,每个模块相互联系又相互自力.这个学生成果管理系统存在着很多缺乏之处,由于自己自己编程能力的问题,这个系统可以实现的功能非常有限.只能实现学生管理系统最基本的功能,可以进行简单的输入、输出学生资料,查询和修改学生信息,能直接从文件中读入数据,能对系统所作 时间:二O二一年七月二十九日 时间:二O二一年七月二十九日 的修改、把持进行保管等.而且在每个模块也有缺乏的处所,比如在输入学生资料时,对每个信息项没有严格的规定,可以输入任何的字符.同时有些模块还不能实现本应该有的功能,这有待以后努力,争能够实现该有的功能. 在21世纪的科技时代,科学技术突飞猛进,计算机已经不单是在科技上应用,而且在生活中也是同样获得了广泛在应用.如今,不论是小学、初中、高中、甚至是很多年夜学生的学生成果管理基本上是靠人工进行管理,但随着时间的变动,学校规模的扩年夜,有关学生成果管理工作和所涉及到的数据量越来越年夜越来越多,年夜大都学校不能不靠增加人力、物力、财力来进行学生成果管理.可是人工管理成果档案具有效率低、查找麻烦、可靠性不高、保密性高等因素.因此开发出一个不单仅是适用于年夜中专院校以及其它高校通用的学生成果管理系统是需要的. 开发一个学生成果管理系统,采纳计算机对学生成果进行管理,进一步提高了办学效益和现代化水平.为广年夜教师和学生提高工作效率,实现学生成果信息管理工作流程的系统化、规范化和自动化.现在我国的年夜中专院校的学生成果档案管理水平普遍都不是很高,有的还停留在全用纸介质基础上,这种管理方式已不能适应时代的发展,社会的需求,因为它浪费了年夜量的人力物力,也存在着许多缺乏的因素.在今天信息时代这种传统的管理方法肯定会被计算机为基础的信息管理系统所取代.一个高效的学生成果管理系统可以存储历届的学生成果档案,不需要年夜量的人力,只需要几名 时间:二O二一年七月二十九日 时间:二O二一年七月二十九日 专门录入员即可把持系统,节省年夜量人力,可以迅速查到所需信息、高效、平安,学生在能方便的检查自己的成果. 8、法式源代码 #include public: char num[10]; char cla[10]; char name[20]; char byyl[10]; char jsjzc[20]; char sjk[10]; char jsjyy[20]; }Student; 时间:二O二一年七月二十九日 时间:二O二一年七月二十九日 Student stu[80]; int menu() { char c; for(;c<'0'||c>'8';) { system(\"cls\"); cout<<\" 欢迎使用本学生成果管理系统!!\"< 时间:二O二一年七月二十九日 cout< int Input(Student stud[],int n) //输入数据. { int i=0; char sign,x[10]; for(;sign != 'n' && sign != 'N';) { cout< cout< cout< cout< 时间:二O二一年七月二十九日 cin>>stud[n+i].byyl; cout< cout< cout< cout< return(n+i); } void Display(Student stud[], int n) //输出数据. { int i; cout< 时间:二O二一年七月二十九日 cout< cout< int i,j; char t[20]; 时间:二O二一年七月二十九日 时间:二O二一年七月二十九日 for(i=0;i strcpy(t,stud[j+1].cla); strcpy(stud[j+1].cla,stud[j].cla); strcpy(stud[j].cla,t); strcpy(t,stud[j+1].num); strcpy(stud[j+1].num,stud[j].num); strcpy(stud[j].num,t); strcpy(t,stud[j+1].name); strcpy(stud[j+1].name,stud[j].name); strcpy(stud[j].name,t); strcpy(t,stud[j+1].byyl); strcpy(stud[j+1].name,stud[j].byyl); strcpy(stud[j].byyl,t); strcpy(t,stud[j+1].jsjzc); strcpy(stud[j+1].name,stud[j].jsjzc); strcpy(stud[j].jsjzc,t); strcpy(t,stud[j+1].sjk); strcpy(stud[j+1].name,stud[j].sjk); strcpy(stud[j].sjk,t); 时间:二O二一年七月二十九日 时间:二O二一年七月二十九日 strcpy(t,stud[j+1].jsjyy); strcpy(stud[j+1].name,stud[j].jsjyy); strcpy(stud[j].jsjyy,t); } cout< char x[10]; cout< cout< cout< cout< cout< cout< 时间:二O二一年七月二十九日 时间:二O二一年七月二十九日 cout< cout< char s[20]; int i=0,j; cin>>s; while(strcmp(stud[i].name,s)!=0&&i return(n); } for(j=i;j 时间:二O二一年七月二十九日 strcpy(stud[j].num,stud[j+1].num); strcpy(stud[j].name,stud[j+1].name); strcpy(stud[j].cla,stud[j+1].cla); strcpy(stud[j].byyl,stud[j+1].byyl); strcpy(stud[j].jsjzc,stud[j+1].jsjzc); strcpy(stud[j].sjk,stud[j+1].sjk); strcpy(stud[j].jsjyy,stud[j+1].jsjyy); } cout< char s[20]; int i=0; cout< while(strcmp(stud[i].name,s)!=0&&i 时间:二O二一年七月二十九日 printf(\"\\\没有发现该学生资料!\\n\"); /*输入失败信息*/ return; } cout< 计 算 机 组 成 原 理:\"< n=Delete(stud,n); cout< 时间:二O二一年七月二十九日 时间:二O二一年七月二十九日 int i=0,num; FILE *fp; char filename[20]; cout< if((fp=fopen(filename,\"rb\"))==NULL) { cout< 时间:二O二一年七月二十九日 时间:二O二一年七月二十九日 fclose(fp); cout< int i=0; FILE *fp; char filename[20]; cout< if((fp=fopen(filename,\"w\"))==NULL) { cout< 时间:二O二一年七月二十九日 将所有记 时间:二O二一年七月二十九日 for(;i fclose(fp); cout< cout< 时间:二O二一年七月二十九日 } void main() //主函数调用. { int n=0; for(;;) { switch(menu()) { case 1: cout< 时间:二O二一年七月二十九日 case 4: cout< 时间:二O二一年七月二十九日 n=Xiugai(stu,n); system(\"pause\"); break; case 8: cout< (1)用户进入系统后,就会看到学生管理系统的主菜单页面.系统总共有九个模块,分别由0到8暗示,在主菜单页面只能输入数字0到8,输入其他字符无效,如果用户输入无效字符,系统仍停留在主菜单页面. (2)进入到主菜单页面后,用户可以根据自己的需求选择分 时间:二O二一年七月二十九日 时间:二O二一年七月二十九日 歧的选项,选择后系统就会进入子系统页面,然后用户按系统的提示把持就行了. 10、参考文献 《C++法式设计》钱能 清华年夜学出书社 《C++法式设计试验指导》钱能 清华年夜学出书社 《C法式设计》谭浩强 清华年夜学出书社 时间:二O二一年七月二十九日 时间:二O二一年七月二十九日
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务