《面向对象程序设计》课程设计-学生成绩管理系统Word格式文档下载.doc

上传人:b****9 文档编号:13087678 上传时间:2022-10-04 格式:DOC 页数:18 大小:425KB
下载 相关 举报
《面向对象程序设计》课程设计-学生成绩管理系统Word格式文档下载.doc_第1页
第1页 / 共18页
《面向对象程序设计》课程设计-学生成绩管理系统Word格式文档下载.doc_第2页
第2页 / 共18页
《面向对象程序设计》课程设计-学生成绩管理系统Word格式文档下载.doc_第3页
第3页 / 共18页
《面向对象程序设计》课程设计-学生成绩管理系统Word格式文档下载.doc_第4页
第4页 / 共18页
《面向对象程序设计》课程设计-学生成绩管理系统Word格式文档下载.doc_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

《面向对象程序设计》课程设计-学生成绩管理系统Word格式文档下载.doc

《《面向对象程序设计》课程设计-学生成绩管理系统Word格式文档下载.doc》由会员分享,可在线阅读,更多相关《《面向对象程序设计》课程设计-学生成绩管理系统Word格式文档下载.doc(18页珍藏版)》请在冰豆网上搜索。

《面向对象程序设计》课程设计-学生成绩管理系统Word格式文档下载.doc

1)根据题目要求,对问题进行需求调查和分析,识别类和对象,合理设计类和对象;

2)合理设计程序结构,系统各项功能要求在函数中实现。

在主函数中设计菜单,通过菜单调用这个函数;

3)输入输出要求由提取运算符和插入运算符的重载函数实现;

公用过程尽可能设计成函数或函数模板;

4)设计过程中必须考虑程序的健壮性,在关键的地方必须要有容错处理。

(二)具备的功能

系统功能:

1.系统初始化包括上述文件的创建和读取(二进制或ASCII文件);

2.增加学生新增加学生信息和成绩;

3.删除学生根据学号删除相应学生信息;

4查询根据学号,查询相应学生信息;

5.排序根据学生学号、姓名、成绩对学生信息排序,并显示;

6.修改修改指定学号的学生数据。

二.模块(函数)的划分、各模块(函数)的功能、采用的自定义的数据类型

(一)模块(函数)的划分

1.类的定义:

student.h

1)定义抽象类person

protected:

intID;

//学号

charName[10];

//姓名

public:

virtualbooloperator<

(Person&

)=0;

//>

运算符重载

virtualbooloperator>

=(Person&

//<

=运算符重载

2)定义派生数据类student,基类为person类。

Private:

intScore[4];

//成绩

voidSwapData(Student*);

//交换数据

Student(int=0,char*=NULL,int*=NULL);

//构造函数

booloperator<

);

//>

booloperator>

//<

friendofstream&

operator<

<

(ofstream&

Student*);

//<

运算符重载输出到文件

friendifstream&

operator>

>

(ifstream&

//>

运算符重载从文件输入

friendostream_withassign&

(ostream_withassign&

//<

算符重载输出到显示器

friendistream_withassign&

(istream_withassign&

//>

运算

符重载从键盘输入

friendclassList;

//List为友元类

3)定义设计结点类Node

private:

Student*Stup;

//指向学生对象指针

Node*Prev,*Next;

//指向前后结点指针

Node();

//构造函数

Node(Student*);

//构造函数

Node(Node&

//复制构造函数

~Node();

//析构函数

//List为友元类

4)定义带有头结点链表类List,私有数据成员为Node*Head,*Tail分别,指向链表头尾:

voidInitList();

//初始化函数

List();

//构造函数

~List();

voidClearList();

//清空链表

Node*FindID(int&

//根据学号寻找学生所在结点

voidInsert(Node*);

//插入一个学生

Node*CreateNode(Student*);

//建立一个学生结点

voidAdd();

//增加一个学生

voidUpdate();

//修改学生成绩

voidDelete();

//删除一个学生

voidQuery();

//查找一个学生

voidSortID();

//按学号排序

voidSortScore();

//按学生总成绩排序

voidSaveBin();

//以二进制形式保存数据

voidPrintList();

//显示链表

voidPrintTitle();

//显示标题

voidPrintOne(Student*);

//显示一个学生数据

2.student类的实现:

student.cpp

3.node类的实现:

node.cpp

4.list类的实现:

list.cpp

5.主函数:

main.cpp

(二)各模块(函数)的功能

1.实现类和函数声明;

2.实现派生类student的各函数;

3.实现结点类Node的各函数;

4.实现结点类List的各函数。

程序结束运行前,调用SaveBin()函数以二进制形式保存学生数据到文件student.dat中;

5.设计主函数。

主函数中显示功能菜单,通过菜单调用类的成员函数实现系统各项功能。

(三)采用自定义的数据类型

自定义的数据类型:

#ifndefSTUDATA_H

#defineSTUDATA_H

#include<

fstream.h>

intGetID();

classList;

classPerson{//抽象类

};

classStudent:

publicPerson{

intScore[4];

friendostream_withassign&

classNode{

Student*Stup;

classList{

Node*Head,*Tail;

voidInitList();

#endif

三.程序运行流程图

开始

输入选项

输入选项!

=END

保存数据SaveBin()

增加学生、修改成绩、删除学生、查询数据、显示数据、按学号排序、按总成绩排序

注:

在主函数中,输入选项,判断是否

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 管理学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1