C+课程设计-学生成绩信息管理系统

上传人:20****03 文档编号:170237788 上传时间:2021-03-01 格式:DOC 页数:22 大小:669KB
返回 下载 相关 举报
C+课程设计-学生成绩信息管理系统_第1页
第1页 / 共22页
C+课程设计-学生成绩信息管理系统_第2页
第2页 / 共22页
C+课程设计-学生成绩信息管理系统_第3页
第3页 / 共22页
C+课程设计-学生成绩信息管理系统_第4页
第4页 / 共22页
C+课程设计-学生成绩信息管理系统_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《C+课程设计-学生成绩信息管理系统》由会员分享,可在线阅读,更多相关《C+课程设计-学生成绩信息管理系统(22页珍藏版)》请在金锄头文库上搜索。

1、本科生课程设计本科生课程设计 课程名称 课程编号 学号 学生姓名 所在专业 所在班级 指导教师 成绩 教师签字 评语: 目目 录录 设计总说明 .I 一、一、 需求分析:需求分析:.2 1.学生信息录入功能学生信息录入功能.2 2.学生信息的增加功能学生信息的增加功能.2 3.学生信息的修改功能学生信息的修改功能.2 4.学生信息的删除功能学生信息的删除功能.2 5.查询功能查询功能.2 6.报表输出功能报表输出功能.2 7.按总分高低排序功能按总分高低排序功能.2 8.文件保存功能文件保存功能.3 二、二、 简单的概要设计简单的概要设计.3 1. 用户输入模块用户输入模块.3 2. 学生信息

2、录入模块学生信息录入模块.3 3. 文件保存功能模块文件保存功能模块.3 4. 查询功能模块查询功能模块.3 5.报表输出功能模块报表输出功能模块.3 三三、详细的功能截图详细的功能截图.4 1.整体登陆显示框架整体登陆显示框架.4 2.输入成绩功能输入成绩功能.4 3.增加学生信息功能增加学生信息功能.5 4.学生信息的修改功能学生信息的修改功能.5 5. 学生信息的删除功能学生信息的删除功能.6 6.按姓名查询按姓名查询.6 7.按学号查询按学号查询.7 8.输出所有学生成绩输出所有学生成绩.7 9.按总分高低排序按总分高低排序.8 10.保存文件保存文件.8 11.退出系统退出系统.9

3、四四、程序结构程序结构.9 设计总说明 首先采用的头文件有: iostream,windows.h,string,fstream,stdlib.h,iomanip。stdlib.h 里面定义了 五种类型、一些宏和通用工具函数。 此函数利用了它的 system()函数,就是 sestem(“cls” ) ,此函数主要是清屏工作。 在 C+中,对文件的操作是通过 stream 的子类 fstream (file stream)来实现的,所以,要用这种方式操作文件,就 必须加入头文件 fstream.h。我们的程序里面就有 ios:ate(文件打开后定位到文件 尾) 。 程序显示定义里一个类,私有成

4、员为学生姓名,课程成绩(C+,英语,高数, 体育,电路与电子学,总分,平均分,名次和学号) 。公有成员为两个构造函数,还有 一个友元函数 friend void main() ,其中就包含有学生类的私有函数成员总分与平 均分。 在主函数里面除了利用学生类私有成员外,第一就是清屏,接着就是输出一些问 候语,指导老师与制作团队。接着就是学生成绩管理系统界面,有 0 至 9 个序号,操 作人员可按照界面提示的操作程序。 这 9 个序号都代表不同的功能: 0、输入学生成绩 1、增加学生成绩 2、修改学生成绩 3、删除学生信息 4、按姓名查询 5、按学号查询 6、输出所有学生成绩 7、按总分高低排序 8

5、、保存文件 9、退出系统 函数建立了 60 个学生数据,也就是说做多能输入 60 个学生信息与成绩。ofstream *file60就负责对文件插入操作。先判断操作人员输入的数字是否为 0 至 9,如果是的 话,就继续接下来的程序块,如果输入 0 的话,程序会弹出界面让操作人员输入 y 或 n,如果输入 n 的话就提示操作人员重新输入,输入 y 的话,就接着输入学生的个人信 息与课程成绩,如果输完一个人的信息,界面上会弹出是否继续输入学生信息与成绩 的提示,此程序块中会把操作人员输入的对象存到 D 盘的 student.txt 中。输入 1 的话, 即增加学生成员,界面会提示操作人员输入要添加

6、的学生信息,接着只要输入就好了, 当然这个块里也是有循环的,程序会提示操作人员是否继续添加学生信息的。2:修改 学生数据。如果 student.txt 中没有成员的话,会输出系统中没有要修改的学生,否则会 提示操作人员输入要修改的学生的姓名。3:删除学生信息。系统还会提示操作人员输 入要删除的学生姓名。4:查询学生(按姓名) 。5:按学号查询。6:输出学生信息。 如果 student.txt 中没有成员的话,会输出系统中没有输入数据,否则就会输出所有的下 学生信息。7:按总分高低排序。8:保存学生信息。 (就保存到 student.txt 中)9:退出 程序。其中用了 exit(0)函数,关闭

7、所有文件,终止正在执行的程序 ,就是表示正 常退出。 学生成绩信息管理系统 计算机科学与技术专业 指导教师:陈亮 团队成员:朱礼雄、牛鹏、李楚富 一、一、需求分析:需求分析: 此次学生成绩管理系统的设计做得比较简单,只用了数组结构完成一 个学生成绩管理系统,此系统的具体功能要求如下: 1.学生信息录入功能学生信息录入功能 用户从键盘输入每个学生的信息:姓名、学号、C+、英语高数、体育、电 路与电子学五门课成绩。 2.学生信息的增加功能学生信息的增加功能 考虑到学生信息的录入不可能做到一次性完成,所以引入学生信息的增加功 能就显得尤为重要了,此信息的增加功能可以对学生的各项信息进行整改,做到万无

8、 一失,确保每个信息都能相应的整改。 3.学生信息的修改功能学生信息的修改功能 为了使系统更具完善性,在现有的增加功能上,添加了修改功能,可以在适 当情况下对学生信息进行修改,以便后续的错误更新。 4.学生信息的删除功能学生信息的删除功能 考虑到学生信息录入需要整体的整改性,或者一时的疏忽导致的整体出错性, 所以很必要添加删除功能。而且当学生信息数据趋于饱和化时,就需要通过删除没必 要的信息来进行新信息的填补,这也是此项功能的最大作用所在。 5.查询功能查询功能 1)浏览所有学生信息; 2)按学号查询学生信息; 3)按姓名查询学生信息; 6.报表输出功能报表输出功能 1) 按学号输出一个班学生

9、信息:依次按姓名,学号,C+成绩,英语成绩,高数 成绩,体育成绩,电路与电子学成绩,将学生信息显示在屏幕上,做到一清二楚。 7.按总分高低排序功能按总分高低排序功能 这是个很必要的引入,为了统计学生成绩的需要和做出学生层次高低排序的 需要,做出排序后,并显示在屏幕上。 8.文件保存功能文件保存功能 1)学生信息每一班存为一个数据文件,数据文件可在程序中打开、编辑和重新 保存。 2)用户输入学生信息可随时保存数据文件。 注:以上功能以菜单形式供用户使用,并有一定的容错功能,可能和现实需要有点偏注:以上功能以菜单形式供用户使用,并有一定的容错功能,可能和现实需要有点偏 差,但不影响使用。差,但不影

10、响使用。 二、二、简单的概要设计简单的概要设计 整体框架: 整个学生成绩管理系统采用数据结构作为基本数据结构,创建一个类 student 用于保存 学生的数据。 模块基本介绍: 1. 用户输入模块用户输入模块 在此模块中,用户将根据菜单提示结合自己的需求输入一个 09 的值,来实现一定的 功能。 2. 学生信息录入模块学生信息录入模块 此模块可以让用户从键盘输入每个学生的信息:姓名,学号,C+,英语,高数,体育, 电路与电子学五门课成绩。用户可插入一个或多个学生信息到当前编辑的班级数据中。 用户可删除一个或多个学生信息。 3.文件保存功能模块文件保存功能模块 用户在确定以录入的成绩无误之后,可

11、以将学生信息以每一班为单位存为一个数据文 件。用户输入的学生信息可随时保存数据文件。 4. 查询功能模块查询功能模块 在此模块里,用户可实现以下操作:1.浏览所有学生信息;2.按学号查询学生信息;3. 按姓名查询学生信息; 5.报表输出功能模块报表输出功能模块 在此模块中,用户可以浏览所有学生的信息,或者可以按学号输出一个班学生信息: 姓名,学号,C+,英语,高数,体育,电路与电子学五门课成绩,总成绩和平均成绩, 到屏幕和文件。也可以按总成绩输出从高到低输出学号、姓名信息。 三详细的功能截图三详细的功能截图 1.整体登陆显示框架整体登陆显示框架 2.输入成绩功能输入成绩功能 3.增加学生信息功

12、能增加学生信息功能 4.学生信息的修改功能学生信息的修改功能 5. 学生信息的删除功能学生信息的删除功能 6.按姓名查询按姓名查询 7.按学号查询按学号查询 8.输出所有学生成绩输出所有学生成绩 9.按总分高低排序按总分高低排序 10.保存文件保存文件 11.退出系统退出系统 四。程序结构四。程序结构 源代码:源代码: #include #include #include #include #include using namespace std; class student private: char Name4; /姓名 double Cpro;/C+ double English;/英语

13、 double Math;/高数 double Sport;/体育 double Electronic;/电路与电子 double Allscore;/总分 double Average;/平均分 int Number; /学号 public: student() student(char name4,int number,double cc,double english, double math,double sport,double el,double as,double av) strcpy(Name,name); Number=number; Cpro=cc; English=engl

14、ish; Math=math; Sport=sport; Electronic=el; Allscore=as; Average=av; friend void main(); ; voidmain() /主函数 double allscore; double average; system(cls); cout 欢迎使用学生管理系统! endl; /标语 cout 指导老师: 陈亮 endl; cout 制作团队: 朱礼雄 for(int x=0;x80;x+) cout*; cout 学 生 成 绩 管 理 系 统 endlendl; cout 0、输入学生成绩 1、增加学生成绩 endl

15、; cout 2、修改学生成绩 3、删除学生的信息 endl; cout 4、按姓名查询 5、按学号查询 endl; cout 6、输出所有学生成绩 7、按总分高低排序 endl; cout 8、保存文件 9、退出系统 0;x-) cout*; coutp; if(p=0 else cout 指令错误!请重新输入:endl; while(flag=0); do /判断:0-9 序号进行相对应的 操作 switch(p) /接收功能选项 case0: /输入数据 char c; char name4; int number; double cpro,english,math,sport,elec

16、tronic; do cout 姓名 学号 C+ 英语 高数 体育 电路与电子学n; /输入学生信息 coutnamenumbercproenglishmathsportelectronic; allscore=cpro+english+math+sport+electronic; average=(cpro+english+math+sport+electronic)/5.0; cout 总成绩:allscore 平均成绩: averageendlendl; /计算成绩 filej=new ofstream(D:student.txt,ios:ate); *filej 姓名 name 学号 number C+成绩 cpro 英语成绩 english 高数成绩 math 体育成绩 sport电路与电子学成绩 electronic总成绩allscore平均成 绩averageendl; j+; si= student(name, number,cpro,english,math,sport,electronic,allscore,average); i+; coutc; coutendl

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

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