C++学生成绩管理系统课程设计报告

上传人:s****a 文档编号:49676816 上传时间:2022-01-18 格式:DOC 页数:11 大小:100.50KB
收藏 版权申诉 举报 下载
C++学生成绩管理系统课程设计报告_第1页
第1页 / 共11页
C++学生成绩管理系统课程设计报告_第2页
第2页 / 共11页
C++学生成绩管理系统课程设计报告_第3页
第3页 / 共11页
资源描述:

《C++学生成绩管理系统课程设计报告》由会员分享,可在线阅读,更多相关《C++学生成绩管理系统课程设计报告(11页珍藏版)》请在装配图网上搜索。

1、一目的与要求通过本课程设计的实践,全面总结 C+课程学习中的的数据类型、程序结构、数组、 函数、指针、结构体、链表等基本概念,掌握其使用方法。掌握面向对象程序设计 中有关类、对象、继承、重载、多态性、输入输出流类体系、文件操作的基本概念, 初步学会用类与对象这种面向对象的程序设计方法编写应用程序。培养使用面向对 象的程序设计方法编写计算机程序的能力。通过设计一个学生成绩统计管理,进一步熟悉C+中类的概念、类的封装、继承 的实现方式。了解系统开发的需求分析、类层次设计、模块分解、编码测试、模块 组装与整体调试的全过程,加深对 C+的理解与Visual C+环境的使用;逐步熟悉 程序设计的方法,并

2、养成良好的编程习惯。程序设计是一门实践性很强的课程,必 须十分重视实践环节。许多实际的知识不是靠听课和看书学到的,而是通过长时间 的实践积累的。一、设计内容学生成绩管理系统1基本功能:这个程序的主要功能是输入学生姓名、成绩,学号,并可以对学生的成绩按学号进 行查询。该系统具有存贮学生数据,按学号按需要修改学生成绩,列出学生成绩和统 计功能。2扩展功能:学生数据的添加、修改、与删除R二、过程与结果主要内容如下:1. 关键类的设计,继承层次关系,代码:首先,创建了一个student类.Student类的声明如下:class Stude ntpublic:int Class ,num;char n

3、ame8;float cpp,math,e ng,ave;int order;Stude nt *n ext;public:Stude nt() e2,floatStude nt(i ntc1,i ntn 1,char* n,float e1,float c2,float m,floats,float p,float a,in t o,Stude nt *n ext=NULL)Class=c1; num=n1;strcpy( name, n);cpp=c2;math=m;e ng=e2;ave=a;order=o;this-n ext=n ext;主要功能函数的设计:1. 创建学生数据,对学生

4、的成绩的录入。代码: friend Student *Create(Student *head,istream& in)int y;Student *p;int Class,num;char name8;float cpp,math,eng;if(&in=&cin) 函数为删除函数的实现部分。 主要代码: friend Student *DeleteStudent(Student *head,int num) Student *p1=head,*p2=p1; while(p2&p2-num!=num) p1=p2,p2=p2-next;if(p2) if(p2=p1) head=head-ne

5、xt;delete p1;else p1-next=p2-next;delete p2;cout已删除numv号学生数据n;SetOrder(head);else coutorder=order+;head=head-next;5修改学生的信息friend Student *Modify(Student *head,int num)示数据:friend void OutputAll(const Student*head)均数据函数friend void Statistic(const Student *head)int i=0;floatave_cpp=0, ave_math=0, ave_e

6、ng=0;while(head) ave_cpp+=head-cpp; ave_math+=head-math; ave_eng+=head-eng; i+;head=head-next;if(!i)coutnn 没有任何学生数据 !n;return;coutnntt 各门课程平均成绩表 nn;couttC+t 数学t 英语 n;coutave_cpp/itave_math/it ave_eng/iendl; 程序测试结果:1 运行程序 . 会出现如下画面 , 按照提示进行选择 .2. 首先选择 1,然后按 Enter 键. 按照提示对学生情况进行输入 . 如图:3. 按 1键可以添加多个学生

7、成绩的数据,按 2 返回主界面。4. 选择 5, 然后按 Enter 键,显示刚才输入的数据和排名的情况。5 在主界面选择 2 可以修改学生的数据。6. 在主界面选择 3 可以按学号查询学生成绩情况7. 在主界面选择 7 可以按学号删除学生的成绩信息三、设计总结这次课程设计基本上涵盖了学习到的 C+ 语言知识点, 课程设计题目要求不仅要求对课本虽然是网上搜来的代码,但这些代码没办法运行,我把这些代码改了和 增加了自己写的代码,终于可以运行,而且到达自己想要的结果,这次课程设计不 仅让我修补了以前学习的漏洞,也让我知道一个道理:编程需要兴趣和实际动手C+吾言程序设计课程设计,我从中受益匪浅,并且

8、对C+吾言程序设计这一门课程有了更深一步的认识。附件程序源代码清单:#include #include class Studentpublic:int Class,num;char name8;float cpp,math,eng,ave;int order;Student *next;public:Student() Student(int c1,int n1,char*n,float e1,float c2,float m,float e2,floats,float p,float a,int o,Student *next=NULL)Class=c1;num=n1;strcpy(name

9、,n);cpp=c2;math=m;eng=e2;ave=a;order=o;this-next=next;friend int Valid(float score)return (score100) ?0:1;friend void SetOrder(Student*head)int order=1;while(head)head-order=order+;head=head-next;键盘录入与添加数据friend Student* Insert(Student *head,Student *p)*n文件录入与添加数据 *ntt*2.修改数据*ntt*3.查询数据*ntt*4.删除数据*n

10、tt*5.显示数据*ntt*6.平均数据*n存数据*ntt* 0.退出系统*ntt*nnH;void main (void)Student *head=0; int select;while(1)ShowMenu();coutselect;switch(select)case 0:DeleteChain(head);coutnn 谢谢您使用本系统 !nn; return;case 1:head=Create(head,cin);break;/*case 2:char fname256;cout 请输入文件名 :;();(fname,256);ifstream in(fname);if(!in)

11、coutn 不能打开 fname 文件 !n;break;head=Create(head,in);break;*/case 2:int num;coutnum;head=Modify(head,num);break;case 3:int num;coutnum;const Student *t=Lookup(head,num);if(t)coutttttname 同学的成绩表 n;cout 班级 t 姓名 t 学号 tC+t 数学 t 英语 t 名次 n;OutputOne(t);else cout 没有找到指定学生 !n;break;case 4:int num;coutnum;head=DeleteStudent(head,num);break;case 5:OutputAll(head);break;case 6:Statistic(head);break;/*case 7:if(head)char fname256;cout 请输入文件名 :;();(fname,256);SaveAll(head,fname);else coutnn尚无数据可保存 !nn;break;*/default:coutnn 非法操作 !nn;

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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