ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:33.99KB ,
资源ID:9322691      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9322691.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(学生成绩管理系统 C++.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

学生成绩管理系统 C++.docx

1、学生成绩管理系统 C+设计题目:成绩管理系统设计要求实现如下功能:输入一个班级的学生基本信息(包括学号,姓名,性别,科目),对N门考试的成绩进行管理(例N=5) 要求 :1.用户录入每个学生每门课程的分数; 2。能够计算每个学生的各门功课总分和平均分,并按总分将成绩排序,显示每个学生的总分和排名; 3。计算全班各门功课的平均分,显示没门课程中低于平均分的每一个学生的学号,姓名,性别,科目,成绩等信息; 4。显示每门科目中,成绩在90分以上的学生信息。另外还输出每门科目中不及格的学生信息; 5。能按姓名或者学号查找,增加,删除和保存各个学生的信息. 6 文件操作源码:class.cpp文件:in

2、cludeiostreamincludefstreamincludestringusing namespace std;class Student private: int no; string name,sex; public: string getName()return name; string getSex()return sex; int getNo()return no; void setSex(string s)sex=s; void setNo(int sno)no=sno; void setName(string nam)name=nam; void show() cout”

3、学号 :noendl; cout”姓名 :”nameendl; cout”性别 :sexendl; coutendl; void Init() string n; int num,s; cout请输入学号:”endl; cinnum; cout请输入姓名:endl; cinn; cout”请选择性别:男 0,女 1endl; cins; no=num; name=n; string s1,s2; if(s=0)s1=boy;Student::setSex(s1); else s2=”girl”;Student:setSex(s2); ;class Classesprivate: string

4、name;public: int number; Student c100; int getNumber()return number; Student getStu()return c100; void setStudent(Student a100)c100=a100; void setNumber(int num)number=num; void Init() number=0; string nam; cout请输入班级姓名:”endl; cinnam; cout”请输入班级人数:number; for(int i=0;inumber;i+) ci。Init(); ofstream o

5、ut; out。open(”student。txt,ios:out); if(!out) cerr文件打不开”endl; abort(); for(int i=0;inumber;i+) outci.getNo() ”ci。getName() ci。getSex()endl; out。close(); void searchByName() string nam; cout”请输入要查找的学生姓名:nam; int i; for(i=0;inumber;i+) if(ci.getName()=nam) ci。show(); void serchByNo() int n; cout请输入要查找的

6、学号;endl; cinn; int i; for(i=0;i100;i+) if(ci.getNo()=n)ci.show();break; ;class Courseprivate: string name; int score; public: string getName()return name; void Init() string nam; cout”请输入课程名:nam; setName(nam); void setName(string nam)name=nam;;class OpreatorCoupublic: Classes c1; Course co20; int Ma

7、rk100100,StuAll100,n; void setN(int nn)n=nn; int getN()return n; int getMark()return Mark100100; Course getCo()return co20; void IN() cout”请输入课程数量:”n; for(int i=0;in;i+) coi.Init(); ofstream outS; outS.open(course.txt,ios::out); if(!outS) cerr文件打不开endl; abort(); for(int i=0;in;i+) outScoi。getName()e

8、ndl; outS.close(); void input(Course co20,int n,Student c, int number ) int s; for(int i=0;in;i+) for(int j=0;jnumber;j+) cout请输入”cj。getName()的”coi.getName()成绩s; if(s0|s100) cout你输入的成绩有误请重新输入!(成绩范围为0-100!)endl; j=j-1; else Markij=s; ofstream out; out。open(”score.txt,ios:out); if(!out) cerr文件打不开endl;

9、 abort(); for(int i=0;in;i+) outcoi.getName(); for(int j=0;jnumber;j+) out ”Markij” ”; outendl; out.close(); void CountStu(int Mark100100,int number,int n) for(int i=0;inumber;i+) int s=0; for(int j=0;jn;j+) s=s+Markji; StuAlli=s; void CountCouAvg(int Mark100100,Student c,int number,Course co,int n)

10、 float CouAll10; for(int i=0;in;i+) float s=0。0; for(int j=0;jnumber;j+) s=s+Markij; CouAlli=s/n; for(int i=0;in;i+) coutcoi。getName()的平均分是:”(CouAlli)endl; for(int i=0;in;i+) for(int j=0;jnumber;j+) if(MarkijCouAlli) coutcj.getName()”的”coi.getName()”成绩小于平均分。endl; void showUnpass(int Mark100100,Stude

11、nt c,int number,Course co,int n) for(int i=0;in;i+) for(int j=0;jnumber;j+) if(Markij60) coutcj。getName()”的coi.getName()”成绩不及格!endl; void showGood(int Mark100100,Student c,int number,Course co,int n) for(int i=0;in;i+) for(int j=0;jnumber;j+) if(Markij90) coutcj.getName()的”coi.getName()成绩优秀!成绩为:Mark

12、ijendl; void order(Student c,int number,int StuAll,int n) for(int i=0;inumber;i+) int sum=0;Student stu; if(StuAlliStuAlli+1) sum=StuAlli; StuAlli=StuAlli+1; StuAlli+1=sum; stu=ci; ci=ci+1; ci+1=stu; for(int i=0;inumber;i+) coutci.getName()的排名是:(i+1)” 总分:”StuAlliendl; ofstream out; out。open(”student

13、score。txt”,ios::out); if(!out) cerr文件打不开endl; abort(); for(int i=0;inumber;i+) outci。getName()” ”StuAlli” (i+1)endl; out。close(); void Delete(int Mark100100,Student c,int number,int n) string na; cout请输入要删除的学生姓名:”na; for(int i=0;inumber;i+) if(ci.getName()=na) for(i;inumber;i+) ci=ci+1; for(int j=0;

14、jn;j+) for(int k=i;knumber;k+) Markjk=Markjk+1; elsecout”您要删除的学生不存在!endl; cout”删除成功!endl; void ReadText(Student c,int number,Course co,int n) char sname30,sex30; int sno; ifstream in(”student。txt”,ios::in); if(!in) cerr文件打不开snosnamesex; while(!in.eof()) i=i+1; ci.setNo(sno); ci。setName(sname); ci。se

15、tSex(sex); insnosnamesex; c1。setStudent(c); c1.setNumber(i+1); in。close(); char nam20; ifstream ins(”course。txt”,ios::in); if(!ins) cerr文件打不开”nam; setN(j+1); ins。close(); cout读取文件完毕,请继续操作!”endl; ;主函数:include”class.cpp#includeiostream void showMenue() cout*学生成绩管理系统*”endl; cout”请选择功能:endl; cout”1 输入学生

16、成绩”endl; cout2 根据成绩排序输出.endl; cout3 显示成绩大于90分的学生endl; cout”4 显示不及格学生endl; cout5 按姓名查找”endl; cout”6 按学号查找endl; cout7 显示成绩小于课程平均分的学生endl; cout”8 删除学生信息”endl; cout0 退出endl; coutendl; void main()int choice,input ;cout请选择初始化方式:1.手动输入 2.从文件读取”input;OpreatorCou op;if(input=1) op.c1。Init();op。IN();if(input=

17、2)op.ReadText(op.c1.c,op.c1.getNumber(),op.co,op.getN()); do showMenue(); cinchoice; switch(choice) case 1: op。input(op。co,op。getN(),op.c1。c,op。c1.getNumber();break; case 2: op.CountStu(op.Mark,op。c1.getNumber(),op。getN()); op.order(op.c1。c,op.c1.getNumber(),(op.StuAll),op。getN()); break; case 3: op

18、。showGood(op。Mark,op.c1。c,op.c1.getNumber(),op。co,op。getN()); break; case 4: op.showUnpass(op.Mark,op。c1.c,op。c1.getNumber(),op。co,op.getN());break; case 5: op。c1。searchByName();break; case 6: op。c1。serchByNo(); break; case 7: op.CountCouAvg(op.Mark,op.c1。c,op.c1。getNumber(),op。co,op.getN();break; case 8: op。Delete(op。Mark,op.c1。c,op.c1.getNumber(),op。getN());break; case 0: break; default: cout您输入的有误,请重新输入!endl; while(choice!=0);运行界面:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1