- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
项目一:高校学籍管理问题设计方案
项目一:高校学籍管理问题程序设计
(选自 王红梅编著《数据结构》第二章)
第一部分:项目分析
问题描述
学籍管理问题中的数据元素具有如下形式:
学生的自然情况包括学号、姓名、性别、出生日期、政治面貌和家庭住址等数据项。
2.功能要求
对学籍登记表要求完成如下功能:
⑴ 插入:将某学生的基本信息插入到登记表中;
⑵ 删除:将满足条件的基本信息删除;
⑶ 修改:对基本信息的数据项进行修改;
⑷ 查询:查找满足条件的学生;
⑸ 输出:将登记表中的全部(或满足条件)基本信息输出。
3.实现要点
对学籍登记表采用顺序的存储结构,在建立表时,由登记表的书写形式转化顺序表存储结构,还要把学生的书面形式转化为具体的类。
4.类定义
为顺序表建立SeqList,其类定义如下:
template class T
class SeqList
{
public:
SeqList() {length=0;} //无参构造函数
SeqList(T a[ ], int n); //有参构造函数
~SeqList( ) { } //析构函数为空
int Length( ) {return length;} //求顺序表的长度
T Get(int i); //取顺序表的第i个元素
void Insert(int i, T x); //在顺序表中第i个位置插入值为x的元素
T Delete(int i); //删除顺序表的第i个元素
void PrintList( ); //遍历顺序表,按序号依次输出各元素
void PrintStudent(T x); //有参输出函数
private:
T data[MaxSize]; //存放数据元素的数组
int length; //顺序表的长度
};
在SeqList类中,提供了如下成员函数
(1) 函数声明 SeqList(T a[ ], int n);
完成的功能 构造长度为n,元素为数组a[ ]中元素的顺序表
(2) 函数声明 int Length( ) {return length;}
完成的功能 求顺序表长度
(3) 函数声明 T Get(int i) 完成的功能:依次查找,读取表中第i个元素
(4) 函数声明 void Insert(int i, T x);
完成的功能 在顺序表中第i个位置插入值为x的元素
(5) 函数声明 T Delete(int i);
完成的功能 查找并删除顺序表的第i个元素
(6) 函数声明 void PrintList( )
完成的功能 遍历顺序表,按序号依次输出各元素
(7) 函数声明 void PrintStudent(T x)
完成的功能 输出元素x
第二部分:程序代码
//文件1:StudentSeqList.h
//---------------------------------------------------------------------------
#ifndef StudentSeqListH
#define StudentSeqListH
#include string
using namespace std; //名字空间
//---------------------------------------------------------------------------
const int MaxSize=100; //100只是示例性的数据,可以根据实际问题具体定义
struct Student
{
string num; //学号
string name; //姓名
string sex; //性别
string born; //出生日期
string p; //政治面貌
string addr; //住址
};
template class T
class SeqList
{
public:
SeqList() {length=0;} //无参构造函数
SeqList(T a[ ], int n); //有参构造函数
~SeqList( ) { } //析构函数为空
int Length( ) {return length;} //求顺序表的
您可能关注的文档
- 非ST段抬高急性冠脉综合症.ppt
- 青铜骑士中信水岸城整合推广策略提报.ppt
- 静脉给药β受体阻滞剂在心律失常治疗中的应用.ppt
- 非地带性分布现象及成因分析.ppt
- 非分散红外多气体组份分析仪说明书.ppt
- 非均匀时间步长显式龙格库塔积分方法 刘黎.doc
- 非妇科液基细胞学 现状与未来.ppt
- 非接触小额支付基础培训.pptx
- 非晶硅叠层薄膜太阳能电池.ppt
- 非常四加一电器融资计划书整理汇总.doc
- 2024年公务接待费台账管理制度(二篇) .pdf
- 2024年农村村委会工作计划例文(二篇) .pdf
- 2024年劳动局劳动合同范本(真题) .pdf
- 2024年交通工作报告6篇 .pdf
- 2024年军队文职人员招聘之军队文职管理学综合检测试卷A卷含答案优质 .pdf
- 2024年公司职工代表大会代表提案管理制度范文(3篇) .pdf
- Unit 4 Healthy food 培优达标卷(含答案,含听力原文,无听力音频).docx
- 广东省潮州市2024-2025学年高三上学期期末考试 政治 含答案.docx
- 2024年井下防爆电气管理规定 .pdf
- 2024年公共卫生突发事件处置应急预案(二篇) .pdf
文档评论(0)