计算机高级语言(C++)课程设计:学生成绩统计管理系统

上传人:aa****6 文档编号:30009890 上传时间:2018-01-26 格式:DOC 页数:35 大小:71.50KB
返回 下载 相关 举报
计算机高级语言(C++)课程设计:学生成绩统计管理系统_第1页
第1页 / 共35页
计算机高级语言(C++)课程设计:学生成绩统计管理系统_第2页
第2页 / 共35页
计算机高级语言(C++)课程设计:学生成绩统计管理系统_第3页
第3页 / 共35页
计算机高级语言(C++)课程设计:学生成绩统计管理系统_第4页
第4页 / 共35页
计算机高级语言(C++)课程设计:学生成绩统计管理系统_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《计算机高级语言(C++)课程设计:学生成绩统计管理系统》由会员分享,可在线阅读,更多相关《计算机高级语言(C++)课程设计:学生成绩统计管理系统(35页珍藏版)》请在金锄头文库上搜索。

1、1湖南科技学院课程设计报告课程名称: 计算机高级语言(C+)课程设计课程设计题目: 学生成绩统计管理系统系: 数 学 系专 业: 信息与计算科学年级、班: 信计 0801姓 名: XX学 号: 9指导教师: XXX职 称: 讲师200X 年 XX 月 XX 日2目录1需求分析32概要设计33程序实现思路44设计总结45参考文献56源代码63一. 需求分析学 生 成 绩 统 计 管 理 系 统 是 为某班级成绩统计管理的一个系统。其中包括学号、姓名、英语、数学、C+语言,各科平均成绩、各科成绩“优秀” 、 “良好” 、 “中等” 、 “及格” 、 “不及格”的人数及其所占比例,学生的总成绩、平均

2、成绩及成绩排名,是为方便班级的管理人员对学生的信息进行管理而设计,主要的功能有成绩的输入、成绩统计、总成绩统计、成绩的统计结果显示, 学生数据的添加、修改、与删除,学生数据的读取与存储等,并提出系统开发的过程,以求获得更 大 范 围 的 应 用 。二 .概 要 设 计1.本 程 序 所 用 到 的 所有抽象数据类型的定义如下:序号 成员名 数据类型 含义1 num long 学号2 name string 姓名3 sum double 总分4 range int 排名5 ave double 平均分6 score double 记录数组42.主程序流程 double ave; /平 均 成 绩

3、int range; long num; string name;double scoren; double sum;double ave; int range;class student class allvoid input(); void count();void sort(); void selectsort();void search(); void insert();int del(); void student:Exit();void display(); 53.各程序模块的功能void input(); /输入void count(); /计算void sort(); /按学号

4、升序排列void selectsort(); /按总成绩降序排列void search(); /查询void insert(); /插入int del(); /删除void student:Exit();/修改数据void display(); /显示void count(); /计算成员函数void average(); /计算平均值成员函数void display(); /显示成员函数三、程序实现思路1.设计菜单实现功能成绩的输入(学号、姓名、英语、数学、C+语言) 。成绩统计(各科平均成绩、各科成绩“优秀” 、 “良好” 、 “中等” 、“及格” 、 “不及格”的人数及其所占比例) 。总

5、成绩统计(学生的总成绩、平均成绩及成绩排名) 。成绩的统计结果显示。学生数据的添加、修改、与删除。学生数据的读取与存储。62.设计类与对象class student /建立学生类,用于存储学生个人信息public:long num; /学号string name; /姓名double scoren;/学生科目成绩double sum; /总成绩double ave; /平均成绩int range; /排名void input(); /输入void count(); /计算void sort(); /按学号升序排列void selectsort(); /按总成绩降序排列void search()

6、; /查询void insert(); /插入int del(); /删除void student:Exit();/修改数据void display(); /显示stuN;class all /建立整体类,用来存放学生整体信息7public:double ave; /每学科的平均成绩int people5; /每学科的各等级人数double percent5; /每学科的各等级人数比例void count(); /计算成员函数void average(); /计算平均值成员函数void display(); /显示成员函数aln;3.通过类的调用实现功能设计case 0:cout /引用库函数

7、#include /引用控制符处理#include /字符串using namespace std;#define N 100 /宏定义#define n 3class student /建立学生类,用于存储学生个人信息public:long num; /学号string name; /姓名double scoren; /学生科目成绩double sum; /总成绩double ave; /平均成绩int range; /排名void input(); /输入void count(); /计算void sort(); /按学号升序排列void selectsort(); /按总成绩降序排列vo

8、id search(); /查询void insert(); /插入16int del(); /删除void student:Exit(); /修改数据void display(); /显示stuN;class all /建立整体类,用来存放学生整体信息public:double ave; /每学科的平均成绩int people5; /每学科的各等级人数double percent5; /每学科的各等级人数比例void count(); /计算成员函数void average(); /计算平均值成员函数void display(); /显示成员函数aln;int total=0; /定义全局变

9、量void student:input() /输入学生个人信息coutsetw(10)stutotal.num;17cinsetw(10)stutotal.name;for(int j=0;jsetw(10)stutotal.scorej;void student:selectsort() /按总成绩降序排列student aa;int i,j;for(i=0;istuj.num)abc=stuj;stuj=stui;stui=abc;void student:display() /显示学生个人信息19selectsort(); /调用按总成绩降序排列函数coutfind_num;for(in

10、t i=0;iID;cinname1;25for(int i=0;iaaaxyz;26stutotal.num=a;stutotal.name=aa;stutotal.score0=x;stutotal.score1=y;stutotal.score2=z;int student:del() /删除int i,j,abc;coutabc;stutotal.sort(); /调用按学号升序排列函数for(i=0;iselect;system(cls);switch(select)case 1:dosystem(cls);stutotal.input();total+; /人数+1cout输入成功

11、,继续输入请输入 Y/y:endl;cout退出请输入其他键 endl;fflush(stdin);ch=getchar();while(ch=Y|ch=y);coutendl;break;case 2:29if(total=0)cout数组为空,请在主菜单中选择 1 添加数据endl;elsecout学生信息为:endl;stutotal.count();stutotal.display(); /显示coutendl;break;case 3:if(total=0)cout数组为空,请在主菜单中选择 1 添加数据endl;elsecout各科学生成绩为 :endl;aln.average()

12、;aln.count();aln.display();coutendl;break;30case 4:if(total=0)cout数组为空,请在主菜单中选择 1 添加数据endl;elsedostutotal.search();cout查询成功,继续查询请输入 Y/y:endl;cout退出请按其他键 endl;fflush(stdin);ch=getchar();while(ch=Y|ch=y);break;case 5:if(total=0)cout数组为空,请在主菜单中选择 1 添加数据endl;elsedostutotal.Exit(); /修改cout修改成功,继续修改请输入 Y/

13、y:endl;31cout退出请按其他键 endl;fflush(stdin);ch=getchar();while(ch=Y|ch=y);break;case 6:if(total=0)cout数组为空,请在主菜单中选择 1 添加数据endl;elsedosystem(cls);stutotal.insert(); /插入total+;cout插入成功,继续插入请输入 Y/y:endl;cout退出请按其他键 endl;fflush(stdin);ch=getchar();coutendl;while(ch=Y|ch=y);32break;case 7:if(total=0)cout数组为空,请在主菜单中选择 1 添加数据endl;elsedosystem(cls);if(stutotal.del() /删除total-; /人数-1system(cls);elsecout该学号不存在 endl;system(pause);system(cls);cout删除成功,继续删除请输入 Y/y:endl;cout退出该选择请按其他键 endl;fflush(stdin);33ch=getc

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号