学生成绩管理系统实验报告,c++

上传人:第*** 文档编号:61614456 上传时间:2018-12-06 格式:PDF 页数:21 大小:633.24KB
返回 下载 相关 举报
学生成绩管理系统实验报告,c++_第1页
第1页 / 共21页
学生成绩管理系统实验报告,c++_第2页
第2页 / 共21页
学生成绩管理系统实验报告,c++_第3页
第3页 / 共21页
学生成绩管理系统实验报告,c++_第4页
第4页 / 共21页
学生成绩管理系统实验报告,c++_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《学生成绩管理系统实验报告,c++》由会员分享,可在线阅读,更多相关《学生成绩管理系统实验报告,c++(21页珍藏版)》请在金锄头文库上搜索。

1、宜宾学院宜宾学院 计算机与信息工程学院计算机与信息工程学院 面向对象课程设计报告面向对象课程设计报告 班级:计 算 机 学 院 专业:计 算 机 科 学 与 技 术 题目:学 生 成 绩 管 理 系 统 指导教师: 导师职称: 学号: 姓名: 组长: 年月日 目录 一设计目的4 1 定义类错 误 ! 未 定 义 书 签 。错 误 ! 未 定 义 书 签 。 2 实现程序功能错 误 ! 未 定 义 书 签 。错 误 ! 未 定 义 书 签 。 二总体设计5 三详细设计6 四调试与测试.16 五心得体会21 一 设计目的 主 要 实 现 对 学 生 成 绩 进 行 系 统 化 的 管 理 , 可

2、以 对 学 生 基 本 信 息 进 行 输 入 、 存 储 、 修 改 、删 除 等 ,还 可 按 照 学 号 来 查 询 、排 序 学 生 信 息 等 。由 此 可 以 看 出 ,此 系 统 对 于 管 理 学 生 成 绩 是 很 有 效 的 。 1 定义 定义学生(student)类,其中至少包括姓名、性别、学号、 班级和四门功课的成绩。 2 实现下面功能 1、设计菜单实现功能选择; 2、输入功能:输入学生信息,并保存到文件中; 3、计算每个学生的总分与平均分并排序 4、能根据学号修改学生信息 5、能根据学号删除学生信息 6、查询功能: 1)能够根据学号查询学生信息; 2)能够根据姓名、班

3、级查询学生信息 3)统计学生成绩,按照班级和科目计算平均分。 5 二 总体设计 学 生 成 绩 管 理 定 义 学 生 类 ( student) 输 入 学 生 信 息 姓 名 性 别 学 号 班 级 英 语 数 学 语 文 应 用 计 算 总 分 计 算 平 均 分 修 改 信 息 删 除 信 息 查 询 信 息 根 据 学 号 进 行 编 辑 根 据 姓 名 班 级 查 询 统 计 成 绩 排 序 按 照 班 级 、 科 目 计 算 分 数 设 计 菜 单 栏 功 能 6 三 详细设计 #include #include #include #include #include #includ

4、e #include using namespace std; typedef class public: char num10; char cla10; char name10; char byyl10; char jsjzc10; char sjk10; char jsjyy10; int pjf; Student; Student stu80; int menu() char c; for(;c8;) system(“cls“); coutstudn+i.cla; coutstudn+i.num; coutstudn+i.name; coutstudn+i.byyl; 8 sum+=zh

5、(studn+i.byyl); coutstudn+i.jsjzc; sum+=zh(studn+i.jsjzc); coutstudn+i.sjk; sum+=zh(studn+i.sjk); coutstudn+i.jsjyy; sum+=zh(studn+i.jsjyy); studn+i.pjf=sum/4;/算出平均分 gets(x); cout i+; return(n+i); void Display(Student stud, int n)/输出数据。 int i; cout1 studj.pjf=studj+1.pjf; studj+1.pjf=a; strcpy(t,stu

6、dj+1.cla); strcpy(studj+1.cla,studj.cla); strcpy(studj.cla,t); strcpy(t,studj+1.num); strcpy(studj+1.num,studj.num); strcpy(studj.num,t); strcpy(t,studj+1.name); strcpy(studj+1.name,studj.name); strcpy(studj.name,t); strcpy(t,studj+1.byyl); strcpy(studj+1.byyl,studj.byyl); strcpy(studj.byyl,t); 10 s

7、trcpy(t,studj+1.jsjzc); strcpy(studj+1.jsjzc,studj.jsjzc); strcpy(studj.jsjzc,t); strcpy(t,studj+1.sjk); strcpy(studj+1.sjk,studj.sjk); strcpy(studj.sjk,t); strcpy(t,studj+1.jsjyy); strcpy(studj+1.jsjyy,studj.jsjyy); strcpy(studj.jsjyy,t); coutstudn.cla; coutstudn.num; coutstudn.name; coutstudn.byyl

8、; coutstudn.jsjzc; coutstudn.sjk; coutstudn.jsjyy; 11 gets(x); n+; couts; while(strcmp(studi.num,s)!=0 12 while(strcmp(studi.name,s)!=0 if(fp=fopen(filename,“rb“)=NULL) coutfilename; if(fp=fopen(filename,“w“)=NULL) coutb; if(b=0) coutsetw(2)“ “谢谢使用!“endl; coutsetw(2)“ “; system(“pause“); exit(0); vo

9、id main()/主函数调用。 int n=0; for(;) switch(menu() case 1: coutsetw(2)“ “输入学生资料“endl; n=Input(stu,n); break; case 2: coutsetw(2)“ “输出所有学生资料“endl; Display(stu,n); break; case 3: coutsetw(15)“ “按姓名排序“endl; Sort(stu,n); coutsetw(2)“ “; system(“pause“); 15 break; case 4: coutsetw(2)“ “插入学生资料“endl; n=Insert(

10、stu,n); coutsetw(2)“ “; system(“pause“); break; case 5: coutsetw(2)“ “删除学生资料“endl; coutsetw(2)“ “输入他(她)的姓名:“; n=Delete(stu,n); coutsetw(2)“ “; system(“pause“); break; case 6: coutsetw(2)“ “查找学生“endl; Query(stu,n); coutsetw(2)“ “; system(“pause“); break; case 7: coutsetw(2)“ “修改学生资料“endl; coutsetw(2)

11、“ “输入你要修改的学生的姓名:“; n=Xiugai(stu,n); system(“pause“); break; case 8: coutsetw(2)“ “从文件中读入数据“endl; n=AddfromText(stu,n); break; case 0: coutsetw(2)“ “将所有资料写入文件“endl; WritetoText(stu,n); coutsetw(2)“ “; system(“pause“); break; 16 四 调试与测试 上 图 为 选 择 1 时 的 界 面 17 上 图 为 选 择 2 时 的 界 面 上 图 为 选 择 3 时 的 界 面 18 上 图 为 选 择 4 时 的 界 面 上 图 为 选 择 5 时 的 界 面 19 上 图 为 选 择 6 时 的 界 面 上 图 为 选 择 7 时 的 界 面 20 上 图 为 选 择 8 时 的 界 面 上 图 为 选 择 0 时 的 界 面 21 五 心得体会 本次实验经过同学、组长的帮助才能做到这个份上,对于 我来说真的很难得了,我并不把总结看的高,所以我认为我做 的还将就吧,还有很多细小的地方感觉有问题,但是时间不那 么够了,只能这样了。 总的来说,这次的实验,我的收获很大吧,以前很多没学 到的东西,在这次能够学到,了解了更多的关于 C+的知识。 最后,谢谢各位老师的帮助!

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

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

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