学生成绩管理系统设计与实现70.docx
《学生成绩管理系统设计与实现70.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统设计与实现70.docx(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、河南工程学院高级程序设计语言课程设计成果报告学生成绩管理系统设计与实现coutnum2). get ();cout请输入要查找的学生的学号:; cin. get line (number 1, 15);判断学生所属学年和班级if (num 1 =2013&num2= 1)判断学生所属学年和班级numl=0;size=sizel;if (numl=2013&num2=2)numl=0;size=size2;cout学年班级姓名 学号 数学英语计算机endl;根据学生姓名查找学生成绩并且输出 for (;isize;i+)if(strcmp(numberl, stuEnumlnum2-li. nu
2、mber)=0) cout/z /zstunuml num2-l i. year/ ; coutz,/zstunuml num2-l i. mathl ()endl;cout不及格科目:;通过if语句判断并输出不及格科目if (stunuml num2-l i. mathl () 60&stunuml num2-l i. englishl () 60&stunumlnum2-li. computeri ()60)cout数学英语计算机60&stunuml num2-l i. englishl () 60&stunumlnum2-li. computeri ()60)cout 英语 计算机end
3、l;coutl.查询学生成绩2.查询不及格学生名单3.退出:; 该函数的功能是显示不及格的学生名单,利用for循环将以上判断出的不及格 的学生的名单按照学年、班级、学号、姓名的方式输出。显示不及格学生名单void Student:list()int size;cout 学年班级 学号for(int numl=0;numl2;numl+)for (int num2=l;num23;num2+)if(num1=0&num2=1)size=sizel;输出不及格学生的信息for(int k=0;ksize;k+)if(stunumlnum2-lk. mathl() 60| |stunumlnum2-
4、lk. englishl() 60| |stunumlnum2-lk. computeri ()60) cout/zstunuml num2-l k. year z/stunuml num2-l k. Class /zstunuml num2-l k. number,z/zstunuml num2-l k. nameendl; else continue; coutn;coutl.查询学生成绩2.查询不及格学生名单3.退出:;3. 5修改数据功能此函数的主要功能是对数据进行修改,在修改功能中,包含了查询功能。根据提示信息输入学生的学期、班级和学号,然后使用if语句对输入的信 息进行判断,当满足
5、判断的条件后执行接下来的for循环语句,对学生信息进行 检索,如果该学生的学号和输入的学号相等,那么输出相应的语句,来提示修改该 学生的信息。修改学生信息函数void Student:change()int numl/num2/size,enter;char numberl15;coutnuml). get ();coutnum2). get ();cout请输入要修改的学生的学号:;cin. getline(numberl,15);if(num1=2 013&num2=1)numl=O;size=sizel; for(int i=O;isize;i+)if(strcmp(stunuml nu
6、m2-li.number,numberl)=O) 根据信息判断 要修改的学生do cout请选择要修改的选项:1.学期2.班级3.学号4.姓名5.数学6.英语7.计算机8.退出endl;coutcc” 请选择:”;cinenter;switch(enter)case 1:cout学期:”;cinstunumlnum2-li.year;break;case 5:cout数学:”;cinstunumlnum2-li.math0stunumlnum2-li.mathlstunumlnum2-li.math2;break;while(enter8);3. 6数据排序功能数据排序功能分为按总分排序,和按
7、平均分排序两种排序方法,两种排序方 式所采用的方法相似,均采用选择排序法进行排序。下面是总分排序函数,首先输入要排序的学期和班级进行选择排序,利用for 循环进行数据输出,而其中总分通过成绩类的成员函数进行计算,完成排序后,按照一定的规那么进行输出数据。void Student:sortl()(Score tempi;创立一个对象,储存要对换的数据int nl,n2,size;cout请输入要排序的学期:cinnl;cout请输入要排序的班级:;cinn2;if(nl=2013&n2=l)nl=O;size=sizel;计算每个学生的总分for(int m=0;msize;m+)stunln2
8、-lm.sum=stunln2-lm.mathl()+stunln2-lm.english l()+stunln2-lm puterl();for(int i=0;isize;i+)for(int j=O;jsize-i;j+)if(stunln2-lj.sumstunln2-lj+l.sum)templ=stunln2-lj;stunln2-lj=stunln2-lj+l;stunln2-lj+l=templ;输出成绩cout学年 班级 学号 姓名 数学英语计 算机总分endl;for(int k=0;ksize;k+)cout stunln2-lk.yearcout stunln2-lk.
9、name H;cout stunln2-lk.mathl()endl;10下面是按照平均分排序的代码段,按照选择排序法进行数据的排序,根据提 示输入的学期和班级,通过if语句进行条件判断,当满足条件后,执行for循环 语句计算平均分并且按照相应的格式进行输出。平均分的排序void Student:sort2() Score temp2;int nl,n2,size;cout请输入要排序的学期:cinnl;cout请输入要排序的班级:;cinn2;if(nl=2013&n2=l)nl=O;size=sizel;if(nl=2013&n2=2)nl=0;size=size2; for(int m=
10、0;msize;m+)stunln2-lm.average=(stunln2-lm.mathl()+stunln2-lm.englishl()+stunln2-lm puterl()/3.0;for(int i=0;isize;i+)for(int j=O;jsize-i;j+)if(stunln2-lj.averagestunln2-lj+l.average)temp2=stunln2-lj;stunln2-lj=stunln2-lj+l;stunln2-lj+l=temp2;cout学年 班级 学号 姓名 数学英语计 算机 总分endl;for(int k=0;ksize;k+) cout
11、 stunln2-lk.yearendl;113. 7数据读取功能与保存数据函数相似,此函数中也使用文件处理的方式,先建立一个文件输 入流对象,以写的方式翻开D:2013年度1班.txt等文件,输入一定的读取条件, 利用if语句进行条件判断,对于满足条件的语句,利用for循环语句进行输出读 取,从而使学生信息都能从文件中读出。/读取数据函数void Student:output()int nl,n2,size;cout “请输入要读取的文件的学期:“;cinnl;cout “请输入要读取的文件的班级:“cinn2;if(nl=2013&n2=l)nl=O;size=sizel;ifstream
12、 infile(D:2013 年度 1 班.txttios:in);在这里利用if语句进行条件判断,以判断文件翻开是否成功,如果不成功那么 进行提示,否那么,利用for语句输出数据。if(iinfile)cerropen error!endl;exit(l);)for(int i=0;isize;i+)infilestunln2-li.yearstunln2-li.CIassstunln2-li.numberstunln2-li.namestunln2-li.math0stunln2-li.mathlstunln2-li.math2coukv学年班级学号姓名coukv学年班级学号姓名数学平时成
13、绩数学期末成绩数学平时成绩所占百分比endl;coutstunln2-li.yearstunln2-li.numberstunln2-li.math0时成绩所占百分比endl;coutstunln2-li.yearstunln2-li.numberstunln2-li.math0stunln2-li.CIassstunln2-li.namestunln2-li.mathl1212stunln2-li.math2 endl;infile.close();3. 8主函数该函数是该程序的主函数,通过以上功能函数添加到主函数中来实现一系列 的功能,包括数据录入、数据查找、数据修改、数据排序、数据保存、
14、读取文件、 退出系统等功能。其中各个功能的调用是通过switch函数来实现的,来根据情 况来执行一定的功能。主函数void main()Student people;定义一个对象 peopleint enter,enterl,enter2;do coutendl;coukv1,数据录入2 .数据查找3 .数据修改4 .数据排序5 .数据保存6 .读文件7 ,退出”7) cout“请重新输入操作序号:endl;cinenter;switch(enter) case 1:cout“请依次输入学生所在的学年,班级,学生的学号,姓名13以及数学、英语、计算机三科成绩:“;people.add();br
15、eak;case 2:coutl.查询学生成绩2.查询不及格学生名单3.退出:;docinenter2;switch(enter2)case 1:people.search();break;case 2: cout”不及格学生名单:endl;people.Iist();break;while(enter23);break;case 3: people.change();break;docoutl.按总分排名2.按平均分排名3.退出:;cinenterl;switch(enterl)case 1:people.sortl();cout”按总分排名:,endl;break;case 2:14peo
16、ple.sort2();cout“按平均分排名:Mendl;break;while(enterl3);break;people.save();break;people.output();break;while(enter7);154. 1系统主界面第4章系统调试运行1.系统主界面。图表4-1系统主界面图16题目学生成绩管理系统设计与实现考核工程考核内容得分平时考核(30分)出勤情况、态度、效率;知识掌握情况、 基本操作技能、知识应用能力、获取知识能力系统设计(20分)分析系统的功能模块编程调试(20分)实现系统的各个功能模块,并完成调试回答下列问题(15分)回答老师针对课程设计提出的问题课程设
17、计报告撰写(10分)严格按照规范要求完成课程设计报告源代码(5分)按照规范要求完成课程设计源代码的排版总评成绩指导教师评语:日期:4. 2程序运行结果2.根据提示按学期,班级录入学生成绩。C:UsersAdministratorDe5ktoplllllllllllDebugllllllllllllllll.exe-XX X XXXMMXMMMMMXXXX 头 X X於 XX WX*XXX M*1.数据录入2 .数据查找3 .数据修改4 .数据排序5 .数据保存6 .读文件7 .退出X M M X*,WX X X * MX* M M XM M X X WM X X M M X M X WM X
18、M MMX M X X WX X X * * M X X X X * M*埴依次输入学生所在的学年,班级,学生的学号,姓名以及数学、英语、计算机三科成绩:存年(2013-2014): 2013| 班级 (1-2: 1帔名:明明洋号:201301微学期末成绩:80垓季平町感缮所占百分比:。刀囱语于破座密?0英适于时座绩所占百分比:0.8让悬机于电座缴:80升黄机平时成绩所占百分比:0.7入 录 据 数入 录 据 数2 .数据查找3 .数据修改4 .数据排序5 .数据保存6 .读文件7 .退出券21.击平平 选窜鳖号毛孽语语语 请国曳子瞿学数数数英安英7券2:明 :学所:生14所所绩绩绩 02绩绩
19、绩绩绩最成成 13成成成成成成时末时 20时末翳末时$平比分百8 9 J_Tf 0 0 7 8289百8070占占:所班级,.7.80.7学生的学号,姓名以及数学、英语、计算机三科成绩:;数据录入2 .数据查找3 .数据修改4 .数据排序5 .数据保存6 .读文件7 .退出IxXMMXXMMMMXXXZNNMXNMXXXXNXZXNXXXXXiWMZXXXMMXXMNXMXXMXMMXXNMWXXNXNWXNMX7箕-X皿皿”皿图表4-2数据录入图173.选择序号5可进行数据保存,保存数据以学期班级进行保存。C:UsersAdministratorDe5ktoplllllllllllDebug
20、llllllllllllllll.exe-。回 汉英语期末成绩:6。英语平时成绩所占百分比:0.8卜悬次期末成绩:70卜僵机平时成绩所占百分比:0.7.数据录入2 .数据查找3 .数据修改4.数据排序5 .数据保存6 .读文件7.退出请选择存的学期:20131已存入文件?.数据录入2 .数据查找3 .数据修改4.数据排序5 .数据保存6 .读文件7.退出X-*XX*KX*X*X*X*X*X*KX*)*X)*K)C*X)f KX* 聚* 射请选择(lf: 2013请重新输入操作序号:道施入要伊查取学期2比3请编墨尾诵您22013年度2班学生侣意已存入文件?X*XM*X*X*XM*y *X*XX*
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统 设计 实现 70
限制150内