还剩45页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
4.2乎学生成绩录入界面里管理员可以进行学生信息的录入,运行效果如图4-2所ZjSoj Ai请字姓二二输性号的俞老麓级数勇高苣大寸门学一耆输入需要录入的学生数量4图学生信息录入界面4-2设计思路利用for循环可以一次性输入多个学生信息,在for循环内利用cout和cin语句实现根据提示录入学生信息核心代码如下void input〃定义一个学生录入函数COUtVV”请输入需要录入的学生数量:cin»n;〃学生数量fori=0;in;i++cout«”\n请输入第”vvi+l”个学生信息:“endl;〃输入信息coutv“学号cin»stu[i].number;coutvv”姓名:cin»stu[i].name;coutv“性别V;cin»stu[i].sex;coutv班级,«,.Mua:j-BP\!VF••••65cin»stu[i].grade;coutvv”科任老师:cin»stu[i].teacher;cout〈高等数学成绩:«cin»stu[i].math;cout«大学英语成绩:«cin»stu[i].english;cout«c++语言成绩cin»stu[i].c;cout«njava成绩”〈;cin»stu[i].java;stu[i].sum=stu[i].math+stu[i].english+stu[i].c+stu[i].java;〃总分计算stu[i].ave=stu[i].sum/
4.0;〃平均分计算coutvCnVv”输入成功,0返回主界面”endl;COUtVV”输入:“;cin»press;switchpress〃选择操作case:break;}学生成绩管理界面
4.3在学生信息操作界面有四个选项,分别为学生成绩修改、学生成绩、学生成绩删除以及返回到学生成绩管理系统主界面运行效果如图4-3所示---------------------学生成绩管理--------------------------------------
1.学生成绩修改
2.学生成绩增加
3.学生成绩删除
4.返回主界面请输入1-4之间的任意一数字〈仅限数字〉输入・_____________________________________________________________5学生成绩管理界面4-3设计思路利用do-while循环反复显示这一子界面的信息,利用cout语句输出信息,利用revamp_student函数实现学生成绩的修改,increase_student函数实现学生成绩的增加,delete_student函数实现新学成绩的删除核心代码如下void menu2〃主界面下2号菜单函数do{cout«n\n\t\t-----------学生成绩管理n«endl«n\nH;.cout«n\t\.・…
4.
3.1学生成绩修改界面在学生成绩管理界面可以按照姓名对学生成绩进行修改,运行效果如图4-4所Zj\o---------------------学生成绩管理--------------------------------------
1.学生成绩修改
2.学生成绩增加
3.学生成绩删除
4.返回主界面请输入-4之间的任意一数字〈仅限数字〜黔威想修改的学生姓名图学生成绩修改界面4-4设计思路利用for循环语句以及if条件语句实现按照姓名匹配修改,利用cout语句实现信息的输出核心代码如下void revamp_studentchar rs
[20];int choose_2_l;cout〈请输入你想修改的学生姓名H«endl;cin»rs;fori=0;in;i++ifstrcmprs,stu[i].name==O{cout你要修改的学生信息如下H«endl«endl;cout«n学号:H«stu[i].number«endl;cout姓名:vstu[i].nameendl;cout性另ij:vstu[i].sexvendl;cout班级:stu[i].grade«endl;cout科任教师:stu[i].teacher«endl;cout高等数学成绩:stu[i].mathvendl;cout大学英语成绩:stu[i].englishendl;cout«c++语言成绩:stu[i].cvendl;cout«java成绩:stu[i].java«endl;cout,总分数:“vstu[i].sumvvendl;cout”平均成绩:stu[i].aveendlendl;cout”确认修改请按1,返回请按2:n«endl«endl;cin»choose21;switchchoose_2_lcase1:coutvv”学号n«fcin»stu[i].number;cout”姓名y;cin»stu[i].name;coutv”|生另I』f,;cin»stu[i].sex;cout班级n«,cin»stu[i].grade;cout”科任老师…;cin»stu[i].teacher;cout«”高等数学成绩:«cin»stu[i].math;cout〈大学英语成绩:«1cin»stu[i].english;cout«c++语言成绩:“cin»stu[i].c;cout«njava成绩:n«,cin»stu[i].java;stu[i].sum=stu[i].math+stu[i].english+stu[i].c+stu[i].java;stu[i].ave=stu[i].sum/
4.0;coutvv”修改成功o n«endl;break;case2:menu2;break;二李成暮城贰
4.
3.2学生成绩增加界面在学生成绩增加界面可以对学生成绩进行增加运行效果如图4-5o
1.学生J绩修改
2.学生成绩增加
3.学生成绩删除
4.返回王界面吟一请输入-4之间的任意一数字《仅限数字曙川尔想增加的学生入命请输入你要增加的学生的数据:输号南姓级性茎胃学、.a+1-ua133^-
3.•:-ap3---£••:3图4-5学生成绩增加界面设计思路定义一个i_s来保存要增加的学生人数,利用for循环来录入新增加的学生成绩信息,并使n=n+i_s确保整个数组中元素个数的正确性核心代码如下void increase_studentcoutvv请输入你想增加的学生人数«endl;cin»i s;fori=n;in+Ls;i++coutvv请输入你要增加的学生的数据«endl;coutvvQn请输入第i+l”个学生信息:“《endl;〃输入信息coutvv”学号:y;cin»stu[i].number;COUtVV姓名”〈;cin»stu[i].name;cout叶生另|J:「cin»stu[i].sex;cout班级”:cin»stu[i].grade;COUtVV”科任老师:“二cin»stu[i].teacher;COUtVV高等数学成绩:«cin»stu[i].math;cout大学英语成绩:«cin»stu[i].english;cout«c++语言成绩n«,cin»stu[i].c;cout«njava成绩vv,,;cin»stu[i].java;stu[i].sum=stu[i].math+stu[i].english+stu[i].c+stu[i].java;〃总分计算stu[i].ave=stu[i].sum/
4.0;//平均分计算n=n+i_s;}
4.
3.3学生成绩删除界面在学生信息删除界面管理员可以删除学生的信息,运行效果如图4-6所示冷.请输入-4之间的任意一数字《仅限数字〉除人余想要删除的学生姓名王小三你要删除的学生信息如下学号姓答王小三性部男班级3注任教胆密勇确认删除请按工,返回请按21删除成功图学生成绩删除界面4-6设计思路利用if和for循环来匹配要删除的学生的姓名然后利用逐个替换法用要删除的对象的后一个元素替换前一个元素,在匹配找到要删除的对象前利用cout语句以及cin语句来实现根据提示要删除的学生的信息利用switch-case确认删除后n自减1,以保证后续查询所有学生成绩信息的正确核心代码如下void delete_studentchar ds[20|;int choose_2_3;cout请输入你想要删除的学生姓名:endl;cin»ds;fori=0;in;i++ifstrcmpds,stu[i].name==0{8戊你要删除的学生信息如下H«endl«endl;cout«n学号:n«stu[i].number«endl;cout姓名:stu[i].nameendl;coutv”|生另lj:〈stu[i].sexendl;cout班级:stu[i].grade〈vendl;cout科任教师:stu[i].teacher«endl;cout高等数学成绩:stu[i].mathvendl;cout大学英语成绩:”stu[i].englishendl;cout«c++语言成绩:vstu[i].cvendl;cout«njava成绩:vstu[i].java«endl;cout总分数:.sum«endl;cout平均成绩:”vstu[i].ave〈endlendl;cout确认删除请按1,返回请按2:«endl«endl;cin»choose_2_3;switchchoose_2_3{case1:stu[i]=stu[i+l];n=n-l;cout删除成功endl;break;case2:menu2;break;学生成绩统计界面
4.4在学生成绩统计界面可以统计学生总分和平均分的排名,也可以统计成绩及格和优秀的学生人数运行效果如图4-7所示-------------------学生成绩统计----------------------------------
1.总分排名
2.平均成绩排名
3.及格人数
4.优秀人数
5.返回主界面请输入「5之间的任意一数字〈仅限数字图学生成绩统计界面4-7分析利用do-while语句实现反复显示学生成绩统计界面,利用switch-case语句来选择需要统计的内容利用rank_total_score函数实现总分的排名,利用rank_average_score实现平均分的排名,利用pass_scorefloat m函数统计及格人数,利用pass_total_scorefloat m统计总分及格人数,利用excellent_scorefloat m和escellent_total_scorefloat m函数实现统计优秀人数和总分优秀人数核心代码如下void menu3do{cout«\n\t\t----学生成绩统计-------------------------------n«endl«n\nn;cout«H\t\.・・・・
4.
4.1总分排名,平均成绩排名设计思路定义一个新的循环变量j然后利用双循环和if语句对前后成绩进行对比,利用开始定义的空闲的结构体a存放要调换的成绩,然后再把成绩高的和成绩低的作调换核心代码如下void rank_total_scoreint j;for i=0;in;i++if stu[i].sum=stu[i+l].suma=stu[i];stu[i]=stu[i+l];stu[i+l]=a;for i=0;in;i++cout〈〈〃第名;〃〈(endl;coutX〈〃姓名:/zstu[i].nameendl;cout”总成绩:/zstu[i].sumendlendl;void rank_average_scoreint j;forj=0;jn-l;j++for i=0;in;i++if stu[i].ave=stu[i+l].avea=stu[i];stu[i]=stu[i+l];stu[i+l]=a;fori=0;in;i++{cout〃第名;〃《endl;cout“姓名:,,«stu[i].name«endl;cout〈”平均分aveendlendl;}
4.
4.5在学生成绩查询界面有4个选项,查询所有学生的成绩也可以按姓名和学号查询学生成绩数,返回主界面运行效果如图4-7所示---------------------学生成绩查询---------------------------------------
1.所有学生成绩
2.按学号查询3-按姓名查询
4.返回主界面请输入1-4之间的任意一数字《仅限数字图学生成绩查询界面4-8分析利用do-while语句实现反复显示学生成绩查询界面,利用switch-case语句来选择需要查询的内容利用display函数实现所有学生成绩的查询,利用number_check函数实现按学号查询学生成绩,利用name_check函数实现按姓名查询学生成绩核心代码如下void menu4do{第章引言1设计目的
1.1目前,学校工作繁杂、资料重多,虽然各类管理信息系统已进入社会,但还未普及,而对于学生信息管理来说,目前还没有一套完整的统一的系统因此,开发一套适和大众的、兼容性好的学生管理系统是很有必要的设计目标
1.2设计一个小型学生成绩管理系统该系统将完成学生信息的查询添加修改,学生成绩的查询等功能
1.
2.1基本功能对学校学生信息管理的系统,主要划分为以下三个模块录入包括录入学生基本个人信息管理包括对学生成绩信息的修改,增加,删除查询按学号,姓名查询、输出学生所有信息统计按总分和平均分进行排名,以及统计及格人数,优秀的人数学生成绩管理系统的功能结构图如图1-1所示学生成绩管理系统退出系统学生成绩管理学生成绩统计学生成绩查询攀蓍询杳兽询加图学生成绩管理系统功能模块图1Tcout«n\n\t\t---学生成绩查询--------------------------u«endl«n\nn;cout”\t\.
4.
5.1所有学生成绩设计思路利用for语句和cout语句循环输出整个结构体的元素数据核心代码如下void displayO//定义一个浏览学生信息的display函数fori=0;in;i++//显示学生的基本信息到屏幕上cout«”\iTvv第“vvi+l〈”个学生信息:“endl;cout«n学号:n«stu[i].number«endl;cout姓名:stu[i].namevvendl;coutvv”性别:“vvstu[i].sexv vendl;cout班级:stu[i].grade Vendl;cout科任教师:H«stu[i].teacher«endl;cout高等数学成绩:stu[i].mathvvendl;cout大学英语成绩:”stu[i].englishvendl;cout«c++语言成绩:.c〈endl;cout«java成绩:vstu[i].javavendl;cout总分数:“vstu[i].sum«endl;coutv平均成绩:vstu[i].aveendl;}
4.
5.2按学号查询设计思路利用for和if语句来实现对比输入的学生学号与已录入的学生学号,如果一致则用cout来输出学生的成绩信息核心代码如下void number_checkint choose_number_c;//定义一个按学号查询成绩的选选项按键int number_c;cout”请输入想要查找学成成绩的学号:;cin»number_c;fori=0;in;i++ifnumber_c==stu[i].number{cout”该学生的信息n«endl;cout«n学号:n«stu[i].number«endl;coutv姓名:n«stu[i].name«endl;cout«T生另Un«stu[i].sex«endl;cout班级H«stu[i].grade«endl;coutv科任老师«stu[i].teacher«endl;cout高等数学成绩H«stu[i].math«endl;coutvv大学英语成绩:n«stu[i].english«endl;coutvvc++语言成绩:H«stu[i].c«endl;cout«njava成绩n«stu[i].java«endl;cout总分n«stu[i].sum«endl;coutvv”平均分是n«stu[i].ave«endl;break;}}cout«endl〈返回上一层请按1,返回主菜单请按O.«endl;cin»choose_number_c;switchchoose_number_ccase1:menu4;break;case0:menu;break;
4.
5.3按姓名查询设计思路利用for和if语句来实现对比输入的学生姓名与己录入的学生姓名,如果一致则用cout来输出学生的成绩信息核心代码如下void name_checkint choose_n_c;〃定义一个按姓名查询成绩的选项按键char name_c
[20];coutvv”请输入想要查找学成成绩的姓名:”;cin»name_c;fori=0;in;i++ifstrcmpname_c,stu[i].name==Ocoutvv”该学生的信息:H«endl;cout«n学号:n«stu[i].number«endl;coutvv”姓名:n«stu[i].name«endl;cout”|生另Un«stu[i].sex«endl;cout”班级H«stu[i].grade«endl;cout”科任老师n«stu[i].teacher«endl;coutvv”高等数学成绩:H«stu[i].math«endl;cout«大学英语成绩:n«stu[i].english«endl;cout«c++语言成绩:H«stu[i].c«endl;cout«Hjava成绩n«stu[i]java«endl;coutvv”总分n«stu[i].sum«endl;coutv”平均分是n«stu[i].ave«endl;break;}coutvvendk〈返回上一层请按1,返回主菜单请按O.«endl;cin»choose_n_c;switchchoose_n_c{case1:menu4;break;case0:menu;break;}本章小结
4.6学生成绩管理系统主要包括学生成绩管理、成绩统计模块和成绩查询模块三大主要功能模块,本章主要对本系统中的每一功能模块作了较为详细的介绍第章测试和调试5测试和调试
4.1在组建时有数个函数的编译总是无法通过,经组员讨论以及翻书查阅回忆后,发现不能在前一个函数中调用编写顺序在其后面的函数,于是大家同意了解决的办法,就是在程序的开头声明了所有的函数后组建完成在程序测试过程中,数据的输入及输出均能够正常进行当用户在子界面完成操作以后,通常需要返回主界面在测试的过程中,我们发现我们的系统在子界面完成操作以后不能返回主界面为了能让程序有更优秀的表现,我们在一级子界面和二级子界面后均添加了一块Switch-case代码,以choose或back为媒介,输入0或字符O以返回上一级界面但又发现在一级子界面返回主界面时系统会直接退出,而非显示学生成绩管理系统主界面的各信息于是我们在每个需要返回主界面的函数中都重新定义一个新的类似“choose”的变量,例如在按名字查询了学生成绩后需要返回主界面,就以函数的名字来定义一个“choose^^变量choose_n_c(其函数名为name_check)以免主界面的do-while循环判断choose为0而直接退出系统在调试过后,程序就能较完整地运行了系统存在的问题
5.2系统的功能尚且还不够完善,还需进一步的完善比如
1.没有运用到类类型以及指针;
2.系统界面还可以进一步优化;
3.没有设计保存学生信息的功能;
4.如果按学号或者按姓名查询学生成绩的时候输入的是错误的数据则不能提示用户输入错误而是直接返回子界面;收获及心得
5.3通过这次为期四周的C++强化实践专周的活动,我们四位组员强化了自己的C++水平,复习了各种C++基础功能以及三种基本语句的应用,加深了对C++程序设计的理解以及运用熟练程度在实验专周中,通过三位指导老师的悉心帮助,完成了这个程序的编写,并且回忆起了很多已经遗忘的知识,填补了一些知识的漏洞这次实践专周为我们今后的学习打下了坚实的基础本章小结
5.4本章主要对系统进行了简单的测试、指出存在的问题参考文献参考文献谭浩强编著程序设计.北京清华大学出版社,
[1]C++
2004.著.邱仲潘等
[2]Harve.M.Deitel.Paua.Jame.Deitel译大学教程(第二版).北京电子工业出版社,C++
2002.著.董梁等译语言命令详解(第二版).北京电子工业出版社,
[3]Brian OverlandC++
2002.致谢我们要首先感谢此次实训的三位指导教师的精心教导,使我们学会了如何用C++编写一个简单的应用程序一开始我们摸不着头绪,后来在老师的鼓励下慢慢摸索,尝试着编写代码,到后来越来越顺利,解决问题的速度也越来越快我们通过这次实践学到了不少编写代码的方法与理念,比如编写一个程序之前,首先要对程序的设计要求有一个比较明确的认识,然后系统分析与系统设计,最后是设计代码与调试送法实验与周让我们选一步加深了对C++语言的理斛和咨提,巩固了所学的理裕知我,提存了我们的实践惚力打计算机△及微软办公软件的保合运用惚力我们编写程序的过程是庠苦便快乐的,昧《多蒯爱钱,一边实践一边探索,我们的偏宿水平才惚有衣足的进步我此,向三佐器导茏师表示景能挚的感激,/电科技支辔成都学院3届实践专周成绩评定表2015学生姓名衡欣学号1230630415专业计算机应用技术课程名称C++强化实践设计题目学生成绩管理系统利用C++相关知识实现学生成绩管理系统一一学生信息操作界面及实践报告的实验要求制作同组成员1230630417魏千森1230630418王跃霖1230630413王晓峰本次课程设计的心得体会在这次实践专周之前,我只尝试过一个人编写一些简单的程序;而在这次实践专周中第一次和同学们合作编写一个较完善的系统这次实践专周让我进步了许多,比如如何规范地编写程序、如何快速地找到问题所在并成功解决;同时也让我看到了自己的诸多不足C++的基础知识体系尚且不够完善、编写一些较难的功能时还比较吃力这次实践专周既给了我努力学习C++的动力,也让我明白还要继续提升自己的编程水平在这次实践专周之前,我只尝试过一个人编写一些简单的程序;而在这次实践专周中第一次和同学们合作编写一个较完善的系统这次实践专周让我进步了许多,比如如何规范地编写程序、如何快速地找到问题所在并成功解决;同时也让我看到了自己的诸多不足C++的基础知识体系尚且不够完善、编写一些较难的功能时还比较吃力这次实践专周既给了我努力学习C++的动力,也让我明白还要继续提升自己的编程水平在这次实践专周之前,我只尝试过一个人编写一些简单的程序;而在这次实践专周中第一次和同学们合作编写一个较完善的系统这次实践专周让我进步了许多,比如如何规范地编写程序、如何快速地找到问题所在并成功解决;同时也让我看到了自己的诸多不足C++的基础知识体系尚且不够完善、编写一些较难的功能时还比较吃力这次实践专周既给了我努力学习C++的动力,也让我明白还要继续提升自己的编程水平扩展功能可以增加新学生的信息,统计及格人数和研究思路
1.3首先确定要实现的功能,在我们的学生成绩管理系统中主要体现对学生成绩信息的操作如添加,查询,修改等;其次体现了学生对自己信息的查询,及浏览本人成绩信息的功能在具体实现时,利用C++的输出格式显示操作的界面,利用函数实现相应的模块功能,再利用循环选择可灵活进行重复操作小组分工
1.4本次实训由衡欣、魏千森、王跃霖、王晓峰我们四位同学一组,每位同学的具体分工如下衡欣负责整个系统的框架以及整个界面的实现和学生成绩管理函数的实现以及各个函数的衔接;王晓峰负责学生成绩信息录入函数的实现;王跃霖负责学生成绩统计函数的实现;魏千森负责学生成绩查询函数的实现;本章小结
1.5本章主要对学生成绩管理系统以及研究思路进行了简单的介绍,为后面的工作做铺垫成绩考核(由指导教师组填写)对小组做整体评阅(前四项为优、良、中及格不及格,总成绩为通过不通过)如个别学生不通过,请在备注栏标明考勤程序及运行结果设计报告PPT及答辩总成绩备注指导教师组签字完成时间年月日电科技女学戚都学就3型届实践专周成绩评定表2学生姓名魏千森学号1230630417专业计算机应用技术课程名称C++强化实践设计题目学生成绩管理系统利用C++相关知识实现学生成绩管理系统一一主界面和学生信息录入界面及实实验要求践报告的制作同组成员1230630415衡欣1230630418王跃霖1230630413王晓峰本次课程设计的心得体会经过这一周的C++强化实践,不仅让我更加熟练掌握了C++中的一些知识,而且也让我找到了我的不足在我们的程序中,由于我们对类和指针不是很会运用,所以没有运用到它们的相关知识但是,我相信,通过我以后的学习和实践,一定能运用到更多的知识成绩考核(由指导教师组填写)对小组做整体评阅(前四项为优、良、中及格不及格,总成绩为通过不通过)如个别学生不通过,请在备注栏标明考勤程序及运行结果设计报告PPT及答辩总成绩备注指导教师组签字完成时间年月日电科技女学戚都学就3型届实践专周成绩评定表2学生姓名王跃霖学号1230630418专业计算机应用技术课程名称C++强化实践设计题目学生成绩管理系统实验要求利用C++相关知识实现学生成绩管理系统一一学生成绩统计界面及PPT的制作同组成员1230630415衡欣1230630417魏千森1230630413王晓峰本次课程设计的心得体会通过这次实践专周,在与同组成员的共同努力下完成了老师所给的任务,在这过程中我知道自己还有很多不足,对其基础知识以及类的应用不是十分清楚明白在学生成绩统计中代码设计,没有运用指针,并且在不能在返回主界面,询问老师查询书籍之后才完成代码的编写通过这次实践专周,在与同组成员的共同努力下完成了老师所给的任务,在这过程中我知道自己还有很多不足,对其基础知识以及类的应用不是十分清楚明白在学生成绩统计中代码设计,没有运用指针,并且在不能在返回主界面,询问老师查询书籍之后才完成代码的编写成绩考核(由指导教师组填写)对小组做整体评阅(前四项为优、良、中及格不及格,总成绩为通过不通过)如个别学生不通过,请在备注栏标明考勤程序及运行结果设计报告PPT及答辩总成绩备注完成时间年月日电科技女学戚都学就3型届实践专周成绩评定表2学生姓名王晓峰学号1230630413专业计算机应用技术课程名称C++强化实践设计题目学生成绩管理系统实验要求利用C++相关知识实现学生成绩管理系统一一学生成绩统计界面及PPT的制作同组成员1230630415衡欣1230630417魏千森1230630418王跃霖本次课程设计的心得体会通过这次实践专周,在与同组成员的共同努力下完成了老师所给的任务,在这过程中我知道自己还有很多不足,对其基础知识以及类的应用不是十分清楚明白在学生成绩统计中代码设计,没有运用指针,并且在不能在返回主界面,询问老师查询书籍之后才完成代码的编写通过这次实践专周,在与同组成员的共同努力下完成了老师所给的任务,在这过程中我知道自己还有很多不足,对其基础知识以及类的应用不是十分清楚明白在学生成绩统计中代码设计,没有运用指针,并且在不能在返回主界面,询问老师查询书籍之后才完成代码的编写成绩考核(由指导教师组填写)对小组做整体评阅(前四项为优、良、中及格不及格,总成绩为通过不通过)如个别学生不通过,请在备注栏标明考勤程序及运行结果设计报告PPT及答辩总成绩备注完成时间年月日第草总体设计2系统需求
2.1管理人员在学生成绩信息录入界面可以录入多位学生信息,录入完毕后可以在学生成绩管理界面完成修改增加查询学生成绩信息等功能管理人员也可以在学生信息查询界面完成查询学生的基本信息的功能,以及在学生成绩统计界面查询学生成绩的总分排名和平均分排名以及学生及格的人数和优秀的人数功能结构
2.2通过前面的分析,可以得到学生成绩管理系统如图2-1所示其功能如下:1录入学生信息管理员输入学生基本信息和成绩信息2学生成绩操作成绩管理界面,可以对学生成绩信息进行修改,增加,删除3学生成绩统计进入成绩统计界面,可以查询学生成绩的排名和及格,优秀人数信息4学生成绩查询进入查询界面可查询所有学生的成绩或按学号以及姓名查询学生成绩退出系统学生成绩管理系统学生成绩管理学生成绩统计学生成绩查询杳询寓加图学生成绩管理系统体系结构图2-1ii本章小结
2.3本章主要从总体上对学生成绩管理系统的各功能模块进行了分析第章详细设计3学生信息定义
3.1本系统中主要考虑了学生的姓名、学号、性别、班级、科任老师、高等数学、大学英语、C++成绩等信息,利用结构体来定义每个学生的具体信息,利用结构体数组来存放多个学生的信息学生结构定义如下:struct stuent//定义一个结构体变量int number;〃学生学号char name
[20];〃学生姓名char sex[20J;//性别int grade;//班级char teacher
[20];〃科任老师float math;//高等数学float english;〃大学英语float c;〃c++语言float java;//java成绩float sum;//总成绩float ave;〃平均成绩}stu
[200],a;〃定义一个能容下200个学生信息的静态结构体数组以存放学生的相关信息,和一个空闲的静态结构体变量a,为后面的排名函数作准备功能模块
3.21主模块这一模块是系统的主界面,在main函数中包括以下几个函数,它们的函数名以及主要功能如下void menu:主菜单功能2学生信息录入,管理模块学生信息录入模块由input函数实现,具体实现学生信息的录入学生成具体实现学生成绩修改、绩管理模块由menu2函数实现,增加、删除等操作通过调用三个函数完成,分别为void revamp_student;//主菜单2的学生成绩修改void increase_student;〃增加void delete_student;〃删除3学生成绩统计,查询模块学生成绩统计,查询模块由menu3和nienu4函数实现,可以统计学生的总成绩和平均成绩排名、及格和优秀人数查询所有学生和按学号和姓名查询学生成绩信息通过调用如下函数来实现void rank_total_score;//平均成绩排名void rank_average_score;〃及格人数int pass_scorefloat m;//总分及格人数int pass_total_scorefloat m;〃优秀人数int excellent_scorefloat m;//总分优秀人数int escellent_total_scorefloat m;//菜单4下的所有学生成绩显示void display;〃按姓名查询void number_check;〃按学号查询void name_check;〃总成绩排名本章小结
3.3本章主要对学生成绩管理系统学生的结构定义、管理员的操作做简单描述,为下一章的具体实现做准备第章系统实现4系统主界面
4.1在学生成绩管理系统主界面有五个选项,分别为学生成绩录入、学生成绩管理、学生成绩统计、学生成绩查询以及退出系统运行效果如图4-1所示----------------------学生成绩管理系统----------------------------------
1.学生成绩录入
2.学生成绩管理
3.学生成绩统计
4.学生成绩查询
0.退出系统请输入-4之间的任意一数字仅限数字输入图4-1学生成绩管理系统主界面设计思路利用do-while循环实现反复显示主界面各信息,利用cout语句输出主界面的各信息,利用switch-case实现选择操作,input函数实现学生信息录入,menu2函数实现学生成绩管理,利用menu3函数实现学生成绩统计,利用menu4函数实现学生成绩查询,利用exit函数实现退出系统核心代码如下void menu〃定义一个主界面函数do{cout,z\n\t\t--学生成绩管理系统------------------//endl«,,\n,/;cout〈〃\t\....
1.学生成绩录..〃〈〈endl〈〃\n〃;cout«〃\t\.・・.
2.学生成绩管..〃〈〈endl〈〃\n〃;cout,z\t\....
3.学生成绩统・..〃endl〈〃\n〃;cout〈〃\t\.・・・
4.学生成绩查...〃endl«”\n〃;。
个人认证
优秀文档
获得点赞 0