《学生成绩管理系统C++编程含源码嵌套模板》由会员分享,可在线阅读,更多相关《学生成绩管理系统C++编程含源码嵌套模板(9页珍藏版)》请在金锄头文库上搜索。
1、c+程序设计课程设计报告设计题目:学生成绩管理系统专业计算机科学与技术(网络工程)班级学号姓名指导老师:日期:目录、设计任务与要求1 .设计内容2 .课程设计的要求二、系统分析(需求分析)1 .需求分析2 .系统性能要求3 .系统的功能分析4 .系统功能模块5 .模块框架图三、系统设计与实现L界面设计2.功能设计与实现四、测试结果五、总结六、参考资料附录:源程序、设计任务与要求1 .设计内容:a.设计四个类:学生类(描述学生基本信息):成绩类:班级类:课程类编号,描述课程信息:课程科目名称(如高等数学,大学英语等):学生成绩及课程信息用文件保存,每个类一个文件,程序执行时从文件读入:b.能按学
2、期.按班级完成对学生成绩的录入.修改,能按班级统计学生的成绩:求学生的总分及平均分:并能根据学生的平均成绩进行排序,能查询学生成绩,不及格科目及学生名单:能按班级输出学生的成绩服。- 设置学生的成绩信息:学生学号、姓名、所选课程名称、平时成绩、期末成绩、平时成绩所占百分比- 计算学生总评成绩:总评成绩=平时成绩*平时成绩所占百分比+期末成绩*(1-平时成绩所占百分比)-显示学生的姓名、所选课程名称以及平时成绩、期末成绩和总评成绩信息。分单人显示和以班输出(班成绩单格式输出到文件)- 注意,至少一个班,30人三门课2 .课程设计的要求:根据C-课程所学的概念、理论和方法,按照C+程序设计的基本步
3、骤,设计出一个适当规模的程序来实现设计课程内容中的全部功能:设计主控模块程序.对给出的程序源代码要给出各部分的详细注择.自己根据能力及需要添加相应功能模块,增强模拟系统功能。包括系统的功能分析、系统的功能模块设计、程序流程图或结构框图、逻辑结构设计,数据库中的表、视图(如果使用)、索引的结构和定义、触发器、存储过程、课程设计体会。二、系统分析(需求分析)1 .需求分析:a.能对学生各科成绩进行录入b.能对学生的成绩进行增加。c.能对学生的成绩进行删除。d.能对学生的成绩进行修改。e.能对学生的成绩按总成绩,姓名,进行查询。f.能输出学生的所有数据。2 .能进行成绩统计h能进行总分查询排名。2
4、.系统性能要求:a.系统安全、可匏:b.功能齐全:c.操作方便、界面友好:d易于维护和扩充。3 .系统的功能分析:资料维护:系统维护包括对学生信息的录入操作及数据表中的信息进行浏览。系统功能:可以对数据表中的信息进行浏览。系统查询:可以对学生的信息进行查询。4 .系统功能模块学生成绩查询系统有:成绩录入、增加、删除、修改,数据查询,排序显示构成。5 .模块框架图三、系统设计与实现1 .界面设计程序运行后会出现一个简捷的窗口,便于用户查询数据。2 .功能设计与实现通过主窗体调用其他窗体,具体实现可以参照系统分析相关内容。应用系统主控界面包括记录编辑和记录查询等功能模块。记录编辑功能完成学生成绩记
5、录编辑和记录查询功能。记录查询功能可以对数据各分类的记录进行查询四、测试结果不能直接对每一个case都能执行,但是有很多的地方都不够完善,例如:在总成绩排序中,只能输出总成绩,不能单独的输出学生的相应的信息:每次进行别的操作之前都要在进行一次数据的录入,原有的文件进行读取。五、总结此次c+-课程设计,在指导教师的精心教导下,我们学会了如何用CH编写一个简单的应用程序。首先要对程序的设计要求有一个比较明确的认识,然后系统分析与系统设计,最后是代码设计与调试。程序实现匕设计了简单的查询界面,将各个功能集中出来按照程序编写原则,便于查询。根据c+-课程所学的概念、理论和方法,按照CH程序设计的基本步
6、骤,设计出一个适当规模的程序:进一步加深对Cf语言的理解和掌握。理论联系实际,加深和巩固所学的理论知识,提高实践能力和计匏机的综合运用能力。我们在编程,就必须我们编写程序的过程是辛苦与快乐的,程序的编写原则很理要.只要才能不断改进.六、参考资料更好提高编程能力。CH程序设计羽浩强清华大学出版社附录:源程序#include0include#includefstream#includesstream(#includeusingnamespacestd:classTstun:return:?outfilenaze,*学号:*number*数学成绩:*math*C+-成绩:“WCPP外语成绩:vven
7、glishwendl:0:(*,ios:in):if(!file)n”:return:CharCh:while(Ch)CoutwCh:Coutwendl;0;j+;si=newTstu(name,number,math,CPP,english):i+;Coutw”数据录入成功,想维续录入吗(y/n)endl;CinC:Chrisl=0;doif(C!=)(Coutvv*指令错误!请重新输入!wendl:CinC:chrisl=l:while(chrisl=0);%hile(c=y):丁;return:)outfilename*学号:nxxmber*,数学成绩:*math*vv*C*+MctjJ
8、j:*vvcpp*c:if(c!=y&c!=*n*)Icoutvv指令错误!清重新输入!*vvendl:cinc:):)while(c=*y):break:case6:ame)=0)flag=l;cout*您要先询的学生是:*(sj).nameendl:cout该生的信息是:学号(sj).number*数学分分数:w(*sj).m8thwcH数:.(*5U).如英语分数:*(sj).englishendl:Iif(flag=O)cout对不起您要查询的学生不存在,清查证后再输入!”endLcout您想继续查询吗?(y/n)/:cinc:if(c!=*y*&c!=n*)*cout,指令错误!请重
9、新输入endl:cinc:/while(c=y):break:)case7:aze*学号:(*sm),nximber*4.总分:getsucO”zr:vv(*smJ).eetaver0wendl:)break:)case9:etsxxm();j+:)for(h=O:hi:h*+)for(n=0:nan+l)temp=an:aW=anl:an+l=temp:)for(n=l:n;if(w=y)欢迎来到学生成绩1ft彻系统*$*$*en11;8U请选择您需要的操作!回:菜单的输出cout*操作:Mendl:cout*(l)数据录入*endl:cout*(2)增加学生*endl:cout(3)删除学生*endl:cout*(4)修改数据endl:cout*查询:*endl:cout*(5)按总成绩查询endl;cout*(6)按姓名查询endl:cout(7)输出所有学生的数据cout*成绩统计/endl:cout(8)每个学生的平均成绩ccutp:)while(w=,y):