欢迎来到天天文库
浏览记录
ID:37914929
大小:1.65 MB
页数:30页
时间:2019-06-02
《C++课程设计 学生成绩排名系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、淮海工学院计算机工程学院课程设计报告设计名称:C++程序设计课程设计姓名:学号:专业班级:系(院):设计时间:设计地点:成绩:指导教师评语:签名:年月日C++程序设计课程设计报告第30页共30页1.课程设计目的本课程设计是网络工程专业重要的实践性环节之一,是在学生学习完《C++程序设计》课程后进行的一次全面的综合练习。本课程设计的目的和任务:(1)巩固和加深学生对C++课程的基本知识的理解和掌握;(2)掌握C++编程和程序调试的基本技能;(3)利用C++进行简单软件设计的基本思路和方法;(4)提高运用C++解决实际问题的能力;(5)掌握书写程序设计说明文档的能力。2.课程设计任务与要求:要求:
2、1)设计题目、设计要求以及系统功能需求分析;2)总体设计:包括模块说明、模块结构图和系统流程图;3)详细设计:包括主要功能模块的算法设计思路以及对应的工作流程图;4)源程序代码及设计成果:完整源程序清单和设计成果;5)总结:调试分析过程描述:包括测试数据、测试输出结果以及对程序调试过程中存在问题的思考(列出主要问题的出错现象、出错原因、解决方法及效果等)包括课程设计过程中的学习体会与收获、对C++和本次课程设计的认识等内容.;任务:设计一个学生成绩排名系统,该系统的主要功能如下:1) 具备对成绩的管理功能(添加、删除、排序)2) 具备对成绩的统计功能(最高分,最低分,平均分,及格率等)3) 具
3、备按学号、姓名、或课程名查询成绩的功能。4)学生成绩应该保存在文件中。备注:成绩记录以下信息:班级,学号,姓名,课程名,成绩(百分制)。可以用能表示学生成绩的结构体数组存储数据。C++程序设计课程设计报告第30页共30页3.课程设计说明书(一)需求分析(功能设计)一、模块说明在本次程序设计中我设计了七个个模块,分别是添加学生信息,对学生信息进行排序,删除学生信息,统计学生信息,查找学生信息,保存学生信息,退出系统。二、模块结构图学生成绩排名系统添加学生成绩对学生成绩排序删除学生成绩统计学生成绩查询学生成绩保存学生成绩退出系统三.系统流程图nn=7n=6n=5n=4n=3n=2paixu()tu
4、ichubaocun()search()cal()delet()add()menun=1YYYYYYYNNNNNN(二)详细设计(各模块流程图)C++程序设计课程设计报告第30页共30页各功能模块设计思路及流程图:【1】模块一:添加学生信息这一模块首先先输入你要输入的学生人数,然后通过键盘输入学生姓名,学生的班级,学生的学号,学生的高等数学的成绩,大学英语的成绩以及C++的成绩,然后将其读入文件中。流程图:主菜单输入c输入学生属性输入n=1输入ai5、行排序,按高等数学的成绩按从高到低进行排序,按英语成绩按从高到低进行排序,按C++成绩按从高到低进行排序这四种排序方式,选择方式之后,根据是否返回小菜单和主菜单进行1和0的选泽。流程图:主菜单C++程序设计课程设计报告第30页共30页Y输入n=2r=1NNr=0输入bNNYb=1输入rNYYYS=stu[j];stu[j]=stu[j-1];stu[j-1]=s;j++输入sj>iistu[j].mscorestu[j-1].num>>j>ii6、=0j=n-1输入i=0j=n-1i++Niistu[j].num>stu[j-1].num>>输入sS=stu[j];stu[j]=stu[j-1];stu[j-1]=sj++YYY输入i=0j=0stu[j].escore>stu[j-1].escore>>【3】模块三:C++程序设计课程设计报告第30页共30页删除学生信息这个模块通过输入学号找出你要删除的学生,然后通过循环语句将它后面的数一个一个的赋值给前面的数,从而把这个是给替代掉。达到删除的功能。流程图:主菜单num=stu[i].numnm输入i=0i7、【i】输出信息i++【4】模块四:C++程序设计课程设计报告第30页共30页统计学生信息这个模块主要通过循环语句先算出各个学生的总成绩以及平均分,并且输出他们的信息,然后采用选择法选出总分最高以及最低的学生,并输出他们的名字。最后通过循环语句和if语句的结合算出各科成绩的及格率。最后返回主菜单。流程图:stu[i].total
5、行排序,按高等数学的成绩按从高到低进行排序,按英语成绩按从高到低进行排序,按C++成绩按从高到低进行排序这四种排序方式,选择方式之后,根据是否返回小菜单和主菜单进行1和0的选泽。流程图:主菜单C++程序设计课程设计报告第30页共30页Y输入n=2r=1NNr=0输入bNNYb=1输入rNYYYS=stu[j];stu[j]=stu[j-1];stu[j-1]=s;j++输入sj>iistu[j].mscorestu[j-1].num>>j>ii6、=0j=n-1输入i=0j=n-1i++Niistu[j].num>stu[j-1].num>>输入sS=stu[j];stu[j]=stu[j-1];stu[j-1]=sj++YYY输入i=0j=0stu[j].escore>stu[j-1].escore>>【3】模块三:C++程序设计课程设计报告第30页共30页删除学生信息这个模块通过输入学号找出你要删除的学生,然后通过循环语句将它后面的数一个一个的赋值给前面的数,从而把这个是给替代掉。达到删除的功能。流程图:主菜单num=stu[i].numnm输入i=0i7、【i】输出信息i++【4】模块四:C++程序设计课程设计报告第30页共30页统计学生信息这个模块主要通过循环语句先算出各个学生的总成绩以及平均分,并且输出他们的信息,然后采用选择法选出总分最高以及最低的学生,并输出他们的名字。最后通过循环语句和if语句的结合算出各科成绩的及格率。最后返回主菜单。流程图:stu[i].total
6、=0j=n-1输入i=0j=n-1i++Niistu[j].num>stu[j-1].num>>输入sS=stu[j];stu[j]=stu[j-1];stu[j-1]=sj++YYY输入i=0j=0stu[j].escore>stu[j-1].escore>>【3】模块三:C++程序设计课程设计报告第30页共30页删除学生信息这个模块通过输入学号找出你要删除的学生,然后通过循环语句将它后面的数一个一个的赋值给前面的数,从而把这个是给替代掉。达到删除的功能。流程图:主菜单num=stu[i].numnm输入i=0i7、【i】输出信息i++【4】模块四:C++程序设计课程设计报告第30页共30页统计学生信息这个模块主要通过循环语句先算出各个学生的总成绩以及平均分,并且输出他们的信息,然后采用选择法选出总分最高以及最低的学生,并输出他们的名字。最后通过循环语句和if语句的结合算出各科成绩的及格率。最后返回主菜单。流程图:stu[i].total
7、【i】输出信息i++【4】模块四:C++程序设计课程设计报告第30页共30页统计学生信息这个模块主要通过循环语句先算出各个学生的总成绩以及平均分,并且输出他们的信息,然后采用选择法选出总分最高以及最低的学生,并输出他们的名字。最后通过循环语句和if语句的结合算出各科成绩的及格率。最后返回主菜单。流程图:stu[i].total
此文档下载收益归作者所有