C++ C语言 程序设计 简单的学生成绩管理系统
C++程序设计语言结业报告
(用适当的形式表达算法设计思想与算法实现步骤)
学生成绩管理系统
学 生 成 绩 查 询
学 生 成 绩 录 入
学 生 成 绩 删 除
学 生 成 绩 修 改
显 示 全 部 记 录
记 录 存 入 文 件
退 出 系 统
无 此 记 录算 法 描 述 及 实 验 步 骤
查 询 成 功
录 入 成 功
无 此 记 录
删 除 成 功
无 此 记 录
修 改 成 功
显 示 成 功
保 存 成 功
退 出 成 功
本系统定义了 Score 类、Subject 类、Student 类以及 Class 类这 四个类,定义了 Insert() 、Update1() 、Show() 、Save() 、Delete() 、 Search1()及 Search2()等函数来实现系统所需功能。
系统通过调用函数来实现学生成绩信息录入、学生成绩信息修改、学 生成绩信息删除、学生成绩信息查询以及数据保存文件等功能。Insert() 函数用于录入学生成绩及信息; Update1 () 函数用来修改学生成绩及信息; Show()函数用于显示所有已有的记录;Delete()函数用来删除学生成 绩及信息;Search1()及 Search2()函数用来查询及信息;Save()函 数用于将输入的信息存入文件内;主函数 main()用于调用这些函数。
(详细记录在调试过程中出现的问题及解决方法。记录实验执行的结果) 学生成绩录入
调 试 过 程 及 实 验 结 果
学生成绩查询
学生成绩修改与保存
显示全部记录
程序总共设计了四个类,满足了课题对类的要求,在设计的过程中, 建立了较为清晰的类层次, 也利用了面向对象的方法以及 C++的编程思想来 完成系统的设计,做到了用文件存储学生成绩信息、从文件中读取学生成 绩信息、修改信息、查询信息、删除信息显示文件中存储的信息等要求。 而且界面简洁,容易操作。但是程序太长,不够简练,导致出现错误很难 发现和修改。
(对实验结果进行分析,问题回答,实验心得体会及改进意见)
首先,接到设计题目之后,在对本题目进行分析的时候,我懂得了一个很 重要的道理,那就是说一个程序的产生需要一个对题目要求有一个正确全 面的分析。其次,就该考虑程序算法的问题了,一个好的算法是一个好程 序的灵魂,也决定了一个程序的质量。 两个星期的课设虽然有些疲劳和困倦,但带给我很多的收获。C++已经 学了一个学期了,有许多知识都存在似懂非懂的现象
,这种现象通过实际 的上机操作,已经减少了许多。对这些知识也有了更深的理解和很好的掌 握。也有很多理论上说得过去的代码,但到了实际操作,却是行不通的。 这种困惑,有许多已经通过实际操作解决了,并能够深刻认识,但也有很 多没有明白。只能避过这些方法,换方法实现。在课程设计之前,因为有 了综合实验的经验与教训,明白了写代码这一步是非常重要的,因为当你总 结
把代码输入电脑,并用编译器将其运行,发现通过不了,再来检查找出问 题,这是一件非常辛苦的事情,也很浪费时间。于是在课程设计的时候, 我花了四天的时间来规划与写代码,将要实现的内容分析清楚,才把代码 输入电脑。我觉得写程序,应该先找到该程序中的核心地方,用多种方法 来实现该核心,这才可能避免等到发现逻辑上或者编译器不支持上的错误, 才来想补救的措施,这样花费时间在想补救措施是很不值得的。 这次的课程设计,真是让我充分的感觉到了要自己设计一个程序是多 么的难,以及学习好 c++是多么的重要。在这个程序的设计过程中,我清楚 的意识到自己的水平有多么的薄弱,课程的知识学得有多么的不扎实。看 网上的例子好像觉得也没那么难,自己一上机实际操作就出现了很多问题, 调试的时候系统总是在报错,还有很多警告,每增加一个函数就要调试好 久,有时候应为少了一个大括号或是分号,导致要找很久很久。虽然系统 可以运行,也具有了一些基本的功能,但我意识到了自己有太多的不足。 以后还会有很多的课程设计,一定要吸取这次的教训,把知识学懂学 透学精,真正的为我所用,这样走上社会我才能真正的发挥所长。(源程序清单等)#include<iostream> #include<fstream> #include<string> using namespace std;
附 录
int M=100; static int M2=0; class Score{ //分数类 private: int score; public: Score(int s=0){ score=s; } void set1(){ cout<<"请输入分数:"<<endl; cin>>score; } void show1(){ cout<<": "<<score<<endl; } };
class Subject{ //科目类 private: Score sc; char subject[20]; public: Subject(){ for(int i=0;i<20;i++) subject[i]=0; } void set2(){ cout<<"请输入科目名称:"<<endl; cin>>subject; sc.set1(); } void show2(){ cout<<subject; sc.show1(); } };
class Student{ private: Subject p1[8]; char name[20];
//学生类
int num; char S; int n; public: Student(){ for(int i=0;i<20;i++) name[i]=0; num=0; S=0; } void set3(); void show3(); int getNU1(){return num;} char *getNA1(){return name;} };
void Student::show3(){ //学生类显示函数 int i; cout<<"姓名:"<<name<<"\t 性别:"<<S<<"\t 学号:"<<num<<endl; for(i=0;i<8;i++) p1[i].show2(); }
void Student::set3(){ //学生类修改函数 int i; cout<<"请输入学生姓名:"
; cin>>name; cout<<"请输入该生学号:"; cin>>num; cout<<"请输入该生性别:"; cin>>S; cout<<"请输入每门课程的名字及分数."<<endl; for(i=0;i<8;i++) p1[i].set2(); }
class Class{ private:
//班级类
Student stu; char name2[20]; int num2; public: Class(){ for(int i=0;i<20;i++) name2[i]=0; num2=0; } int getNU(){return stu.getNU1();} string getNA(){return stu.getNA1();} void set4(){ cout<<"请输入该生所在班级名称:"; cin>>name2; cout<<"请输入该班班号:"; cin>>num2; stu.set3(); } void show4(){ cout<<"班级:"<<name2<<"\t 班号:\t"<<num2; stu.show3(); } friend void Search1(Class c1[],int count1); friend void Search2(Class c2[],int count2); friend void Update1(Class c3[],int count_d); friend void Delete(Class c4[],int *count_c); friend void Insert(Class c5[],int &count_a); }b[100];
void Save(Class c6[],int count) {
//记录存入文件函数
fstream file("class.dat",ios::out|ios::binary); if(!file) { cout<<"file coun't open."<<endl; abort(); } for(int i=0;i<count;i++) file.write(reinterpret_cast<char*>(&c6[i]),sizeof(c6[i])); file.close(); }
void Show(Class c7[]) { int i=0; for(i=0;c7[i].getNU()!=0;i++) c7[i].show4(); }
//显示记录函数
void Insert(Clas …… 此处隐藏:3605字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [资格考试]石油钻采专业设备项目可行性研究报告编
- [资格考试]2012-2013学年度第二学期麻风病防治知
- [资格考试]道路勘测设计 绪论
- [资格考试]控烟戒烟知识培训资料
- [资格考试]建设工程安全生产管理(三类人员安全员
- [资格考试]photoshop制作茶叶包装盒步骤平面效果
- [资格考试]授课进度计划表封面(09-10下施工)
- [资格考试]麦肯锡卓越工作方法读后感
- [资格考试]2007年广西区农村信用社招聘考试试题
- [资格考试]软件实施工程师笔试题
- [资格考试]2014年初三数学复习专练第一章 数与式(
- [资格考试]中国糯玉米汁饮料市场发展概况及投资战
- [资格考试]塑钢门窗安装((专项方案)15)
- [资格考试]初中数学答题卡模板2
- [资格考试]2015-2020年中国效率手册行业市场调查
- [资格考试]华北电力大学学习实践活动领导小组办公
- [资格考试]溃疡性结肠炎研究的新进展
- [资格考试]人教版高中语文1—5册(必修)背诵篇目名
- [资格考试]ISO9001-2018质量管理体系最新版标准
- [资格考试]论文之希尔顿酒店集团进入中国的战略研
- 全国中小学生转学申请表
- 《奇迹暖暖》17-支2文学少女小满(9)公
- 2019-2020学年八年级地理下册 第六章
- 2005年高考试题——英语(天津卷)
- 无纺布耐磨测试方法及标准
- 建筑工程施工劳动力安排计划
- (目录)中国中央空调行业市场深度调研分
- 中国期货价格期限结构模型实证分析
- AutoCAD 2016基础教程第2章 AutoCAD基
- 2014-2015学年西城初三期末数学试题及
- 机械加工工艺基础(完整版)
- 归因理论在管理中的应用[1]0
- 突破瓶颈 实现医院可持续发展
- 2014年南京师范大学商学院决策学招生目
- 现浇箱梁支架预压报告
- Excel_2010函数图表入门与实战
- 人教版新课标初中数学 13.1 轴对称 (
- Visual Basic 6.0程序设计教程电子教案
- 2010北京助理工程师考试复习《建筑施工
- 国外5大医疗互联网模式分析




