欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    学生成绩管理系统设计与实现44.docx

    • 资源ID:62371977       资源大小:63.41KB        全文页数:21页
    • 资源格式: DOCX        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    学生成绩管理系统设计与实现44.docx

    河南工程学院高级程序设计语言课程设计成果报告学生成绩管理系统设计与实现3. 4. 2 Ban:display。的设计Ban: display ()负责打印班级内有不及格科目的学生信息。代码实现:void Ban:display ()班级学生不及格情况(infile>>maj>>num;cout<专业:班级编号:,z<<num<<endl;for(int i=0;i<30;i+) (studenti. display ();4. 4. 3 Ban:pop_mark()的设计Ban: : pop_mark ()函数负责打印学生个人成绩单。代码如下:void Ban : : pop mark () 学生个人成绩单查找(string na;string nu;cout*请输入学生姓名:;cin>>na;cout<< 学号:;cin>>nu;for(int i=0;na=studenti. name && nu=studenti. num;i+) (student i. show_s () ;第4章系统调试运行在程序基本完成并且无语法错误的情况下便可进行调试运行,看测试是否出 现逻辑错误或者不满意的情况,然后进行针对性修改。4.1 输入文件格式向文件输入数据的格式非常关键,格式不对程序运行便会出现各总错误。向 文件输入学生信息的顺序如下:专业班级姓名性别学号课程编号课程名称学期平时成绩期末成绩 平时成绩所占百分比样例:软工1342李玉瑞 男201312211201142 高数 1 78 78 0.4242 英语 1 78 78 0.4234 程序 1 78 78 0.4软工1342小辉女 201312211208142 高数 1 89 89 0.4242 英语 1 78 56 0.4234 程序 1 90 89 0.4软工1342小民 男 201312211218142 高数 1 80 78 0.4242 英语 1 67 34 0.4234 程序 1 86 98 0. 42调试运行结果程序运行,根据提示将所有学生信息输入并存到指定文件中,如图4.1所示: 'F:Microsoft Visual StudioMyProjects1234Debugrui.exe"专业名称:软工;专业名称:软工息 一百 有 基- 2 E 学34行及14 -1 50411各8 8 JL 4 容7 7斤2妾M 号名男01学口薪入编姓考:2入m成成: 1成成: 1成成成绩口薪绩口薪别口霸目末时目末时目mws末时 濯班学!千请2t千平期平也B学平期平也B学平期平图4.1程序运行输入图程序会自动从wen.dat读入学生信息,用户可根据提示查找如图4. 2所示:3 、耳 或绩名 常成格 国人绩及 入个成不 2- 援于 选印E E 请1.2.3.图4. 2程序运行查找学生成绩图打印班级成绩单样例为:软工1342李玉瑞男201312211201高数 1 78 78 78英语 1 78 78 78程序 1 78 78 78总成绩:234平均分:78小辉女 201312211208高数 1 89 89 89英语 1 78 56 64. 8程序 1 90 90 90总成绩:243.8平均分:81.3小民 男 201312211218高数 1 80 80 80英语 1 67 67 67程序 1 86 86 86总成绩:233平均分:77. 710课程设计体会经过差不多一个星期的努力,基本上完成我的C+课程设计学生成绩 查询程序,也基本上实现了我在需求分析时所预期的功能。这次的课程设计,使我将从书本上学习到的理论知识用到了实践上, 从而进一步巩固和丰富了我所学过的知识,让我更深层次地认识到C+及其 强大的功能。同时,做这门课程设计也进一步加强了我的动手能力。为了完 成好这次课程设计,我提前做了较多的准备,一边上网查找相关资料,另一 方面查阅相关书籍。在这过程中也无形中锻炼了我的思维分析、遇到问题时 想方设法解决问题的能力。但是,设计过程中也存在一些问题,本来一开始 想给这个学生成绩查询程序输出设成图表的形式,以及添加修改功能,但是 由于知识点不到位以及各种其他原因,使得这些想法没有实现,这是这次课 程设计的一点遗憾。通过这次实训,让我知道了自己的缺乏和需要掌握的知 识,我会在以后的学习中取长补短更加努力,学习课本知识的同时,多看与 专业有关的书籍,并利用自身资源去更好的学习这门知识,同时在学习的过 程中向老师、同学多多请教和讨论也是很重要的。11参考文献1谭浩强.C+面向对象程序设计(第二版).清华大学出版社2谭浩强.C+面向对象程序设计试题及上机指导.清华大学出版社3李予敏译.C+入门经典(第三版).清华大学出版社4裘宗燕译.C+程序设计语言.机械工程出版社5刘鑫杨健康译.C+高级编程.机械工程出版社6蒋爱军译.C+Primei中文版.人民邮电出版社12#include<iostream>#include<string>#include<fstream>using namespace std;ofstream outfileC'wen. txt,ios:out);ifstream infile(wen. txt,ios:in);class Score;class Course 课程类,包括课程编号,科目名称 (public:void set c (Score&);void showc(Score&);void display(Score&);private:string num;string name;);class Score 成绩类,包括学期,平时成绩,期末考试成绩,平时成绩所占百分 比,及格情况。(public:friend void Course: :set_c(Score&); 声明course类的成员函数是本函数的友元 函数friend void Course:show_c(Score&);void display(Scorefe);void set_s ();void show s ();private:string num;int scorel;int score2;double d;double score3;char h;);13class Student学生类,包括姓名,性别,学号,课程类对象数组(public:void set_s ();void show_s ();void display ();string name;string sex;string num;Course coursel; private:;class Ban /班级类,包括专业,年级,学生类对象数组 (public:void set_b ();void show b ();void popjnark();void display ();private:string maj;string num;Student student 2;);void Score: : set_s()定义成绩类的成员函数(cout<学期:;cin>>num;cout<“平时成绩:;cin>>scorel;cout<期末成绩:;cin>>score2;cout< 平时成绩所占百分比:;14 cin>>d;outf ile学期:<<num平时成绩:scorel<<期末成绩:<<score2<<endl;)void Score:show_s() |inflie>>num>>scorel>>score2>>d;score3=scoreHd+score2*(l-d);cout 学期:平时成绩:"<<scorel期末成绩:<score2<<总评成 绩:z,<<score3«endl;)void Course: :set_c(Score &s)定义课程类的成员函数(cout« 科目编号:;cin>>num;cout科目名称:; cin>>name;科目编号:<<num<科目名称:"<name;set_s ();void Course:show_c(Score &s) (infile>>name;cout<”科目:<<nanie<endl;show_s ();)void Course:display (Score &s) (infile>>s. score3;if (s.score3<60)h='f'5. show_s ();cout<<不及格:,z<<endl;15elseh二't'void Student: :set_s()定义学生类的成员函数(Score s;cout<学生姓名:;cin>>name;cout<性别:;cin>>sex;cout<学号:;cin>>num;cout*请输入学生的各科成绩:endl;outfile<学生姓名:name。性别:sex«学号:num<此学生的各科成 绩:Vendl;course0. set c(s);coursel. set_c(s);course2. set_c(s);)void Student:shows()(Score s;inf ile>>name»sex>>num;cout<"姓名:"<name<<"性别:"<<sex<<”学号:z,<<num<<endl;course0. show_c(s);course1. show_c(s);course2. show_c(s);void Student: :dispiay() 学生个人成绩及格情况 Score s;course0. dispiay(s);coursel. dispiay(s);16题目学生成绩管理系统设计与实现考核工程.考核内容得分平时考核(30分)出勤情况、态度、效率;知识掌握情 况、基本操作技能、知识应用能力、获取知识能力系统设计(20分)分析系统的功能模块编程调试(20分)实现系统的各个功能模块,并完成调试回答下列问题(15分)回答老师针对课程设计提出的问题课程设计报告撰写(10分)严格按照规范要求完成课程设计报告源代码(5分)按照规范要求完成课程设计源代码的排版总评成绩指导教师评语:日期:course2. display(s);void Ban: :set_b()定义班级类的成员函数|cout* 请输入班级学生的基本信息:;cout<”专业名称:”;cin>>maj;cout<班级编号:"cin>>num;outfile班级学生的基本信息:endk专业名称:班级编号:,z<<num«endl;for(int i=0;i<2;i+)studenti. set_s();void Ban:show_b()|infile>>maj>>num;cout专业:班级编号:/z<<num<<endl;for(int i=0;i<30;i+)studenti. show_s();void Ban: :display ()班级学生不及格情况(infile>>maj>>num;cout<<“专业: <<niaj<< 班级编号:,«num<<endl;for(int i=0;i<30;i+)studenti. display();17void Ban : : pop_mark ()学生个人成绩单查找string na;string nu;cout*请输入学生姓名:;cin>>na;cout<< 学号:;cin>>nu;for(int i=O;na=studenti. name && nu=二studenti.num;i+) studenti. show_s();)int main ()(Ban b;of stream outfile (wen. txtz/, ios: :out);输入学生各类信息并输出到 wen. txt文件内if(! outfile)(cerr<<z,open error!,z<<endl;exit (1);)b. set_b ();outfile. close ();ifstream infile (z/wen. txt,z, ios: : in) ;/ 从 wen. txt 文件内读入数据输学生各类信息if(! infile)(cerr<<,open error !,z<<endl;exit (1);)cout<”请先选择输入1或2或3,<<endl;18cout«,zl.打印学生个人成绩endl ;cout«z,2.打印班级成绩<<endl;cout«,3.打印学生不及格名单int a, i;cin>>a;if(a=l)b. pop_mark ();if (a=2)b. show b ();if(a=3)b. display ();infile, close();return 0;19第1章 系统设计目的级任务1系统设计目的11.1 系统设计要求1第2章 系统实现思路21各个类基本功能21. 2类间的联系3第3章系统详细设计31 分数类的设计(Class Score)42. 2 课程类的 设计(class Course)43 学生类的设计(Class Student)53. 4班级类的设计(class Ban)64. 1 Ban: : show_()成员函数设计63. 4. 2 Ban:display ()的设计74. 3 Ban: :pop mark。的设计7第4章系统调试运行81输入文件格式84. 2调试运行结果9课程设计体会11参考文献12附录13第1章系统设计目的级任务L1系统设计目的熟练掌握C+语言的基本知识和技能,掌握面向对象程序设计的基本思路和 方法。通过实践掌握类与对象的概念、类的继承与多态、文件的翻开与输入输出 等,并利用所学的基本知识和技能解决程序问题,培养分析能力、解决问题的能 力。1. 2系统设计要求(1)设计四个类,包括学生类(描述学生基本信息);成绩类:班级类; 课程类(描述课程信息:课程编号,科目名称,如高等数学,大学英语等);(2)学生成绩及课程信息用文件保存,程序执行时从文件读入;(3)能按学期,按班级完成对学生成绩的录入、修改,能按班级统计学生 的成绩;(4)求学生的总分及平均分,并能根据学生的平均成绩进行排序,能查询 学生成绩,不及格科目及学生名单;能按班级输出学生的成绩单。- 设置学生的成绩信息:学生学号、姓名、所选课程名称、平时成绩、期 末成绩、平时成绩所占百分比- 计算学生总评成绩:总评成绩=平时成绩*平时成绩所占百分比+期末成绩 *(1-平时成绩所占百分比)- 显示学生的姓名、所选课程名称以及平时成绩、期末成绩和总评成绩信 息。分单人显示和以班输出(班成绩单格式输出到文件)注意,至少应包含一个班、30人、三门课第2章系统实现思路在系统实现过程中定义有4个类,这4个类层层继承,最后在班级类中定义 成员函数层层调用实现输出学生所有信息,然后通过判断用户需求来实现查询学 生个人成绩、班级成绩、不及格情况等功能。2.1各个类基本功能每个类都有其输出函数,根据实现功能的不同,通过成员函数来计算、输出 所需成员的信息。在此特别说明,由于这4个类之间相当于层层继承关系,因此 在定义成员函数时都需调用下一级类的成员函数,这样一层层下去便可输出学生 的全部所需信息。表2.1各类的数据成员类名成员分数类Score平时成绩scorel,期末成绩score2, 总评成绩score3,平时成绩所占百分 比do学生类Student姓名name,性别sex,学号num,总 分score4,平均分score5,课程类 对象数组course 3。班级类Ban专业major,班级num,学生类对象 数组 student 30。课程类Course科目编号num,科目名称name,及格 情况ho2. 2类间的联系在系统实现过程中定义了 4个类,分别为班级类(Ban),学生类(Student),课程类(Course),成绩类(Score)。类之间层层嵌套,其中班级类中有学生类的对象数组,学生类中有课程类的对象数组,课程类中又包含成绩。在实现某总功能时只需调用一个成员函数便会进行一系列函数调用,从而实现输出各种所需各类之间的关系如图2.1所示:class Banstudent3Ocourse3图2.1类关系图第3章系统详细设计在此详细说明各类的显示函数的定义。3. 1分数类的设计(Class Score)通过show_s()函数来实现输出成绩的功能。总评成绩=平时成绩*平时成绩所占百分比+期末成绩*(1-平时成绩所占百分 比)。代码实现:void Score:show_s() inflie>>num>>scorel>>score2>>d;score3=scorel*d+score2*(l'd);cout学期: <<nuni平时成绩:scorel期末成绩:<<score2<总评成绩:"z<<score3<<endl; 2课程类的设计(class Course)定义课程类是成绩类的友元函数,通过Show_c ()函数来实现计算和输出此 课程信息及分数。通过displayO函数来输出不及格时此课程的信息。代码实现:void Course:show_c(Score &s) (Infile>>name;cout<科 目:z/<<name<<endl;s. show_s ();void Course:display(Score &s)infile>>s. score3;if (s. score3<60)h=' f's. show_s ();cout不及格:endl;)3. 3学生类的设计(Class Student)class Student中设有课程类的对象数组course3。其它的数据成员为: 学生姓名(name),性别(sex),学号(num) o通过show_s ()函数来实现输出学生的基本信息和各科成绩,并计算总分和 平均分的功能。通过display。函数来输出学生不及格科目的信息。代码实现:void Student:show_s()(Score s;infile>>name>>sex>>num;cout姓名:<name性别:sex<学号:,<<num<<endl;course0. show_c(s);courseshow_c(s);course2. show_c(s);void Course:display(Score &s)infile>>s. score3;if (s. score3<60)(h=' f's. show_s ();5cout<<不及格:<endl;elseh=,t5 ;3. 4班级类的设计(class Ban)class Ban负责班级的基本信息,包括专业(major),班级编号(num),学生类 对象数组student30用以储存该班级的学生信息。class Ban包含3个成员函数,具体如下:表3.2班级类成员函数功能:成员函数名参数类型功能描述b. show_b ()void打印班级成绩单b. pop mark ()void打印个人成绩单b. display ()void打印班级学生不及格名单3. 4. 1 Ban: :show_()成员函数设计该函数实现从文件读入班级学生信息通过一个循环将各学生的成绩打印出 来。其中的循环为调用学生类的Show_s()函数。代码实现:void Ban: : show b ()打印班级成绩单(infile>>maj>>num;cout专业:班级编号:/<<num<<endl;for(int i=0;i<30;i+)(student LiJ. show_s ();

    注意事项

    本文(学生成绩管理系统设计与实现44.docx)为本站会员(太**)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开