(最新版)数据结构课程设计报告2402125(2)

2019-02-15 22:45

b) 利用直接插入函数对个学校的总分进行排序 c) 输出各学校的总分,记录入文件item_info.txt中 d) 退出菜单选项 异常处理:无 3) 用例4

用例名:排序操作 行为者:管理员

目的:可以按学校编号或名称、学校总分、男女团体总分排序; 级别:一级 过程描述:

a) 利用算法分别实现按学校编号排序 b) 按学校编号或名称排序 c) 按学校总分排序 d) 按男女团体总分排序

e) 利用一个选择的菜单实现这些排序 f) 后台显示,用户选择 g) 显示结果 h) 退出系统 异常处理:无 4) 用例5

用例名:查询操作 行为者:管理员、学校

目的:可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前

三或前五名的学校。

级别:一级 过程描述:

a)输入学校编号以及要查询的项目进行查询 b)输入项目编号查询获奖情况

f) 退出系统。

异常处理:无 5) 用例6

用例名:数据的增加、删除、修改,并将相关数据进行保存 行为者:管理员

目的:实现数据的增加、删除、修改,并将相关数据进行保存; 级别:一级 过程描述:

a) 对文件进行数据的增加,删除,修改等操作 b) 查看是否操作成功,输出修改后的数据 c) 退出系统

异常处理:无 6) 用例7

用例名:各个操作数据的文件保存 行为者:管理员

目的:各操作结果能保存到文件,以便查询 级别:一级 2.5数据

下面仅列出主要实体。 (1)学校实体

学校实体包括学校名称、学校编号、学校总分、女团体总分、男团体总分,如图学生实体E-R图2.5所示。

图2.5 学校实体E-R图

(2)活动项目实体

项目实体包括项目编号、取前三或前五、项目类别、项目获名者。如图项目实体E-R图2.6所示。

图2.6 活动项目实体E-R图

2.6拟采用的技术

实现本系统用到了C/C++基础程序设计,数据结构。本系统将采用文件存储、结

构存储、链表方法以及调用不同函数来实现系统功能,算法中主要采用是链表操作如:查询、增加、删除、修改以及链表的插入排序等,输入与读取都是以文件的形式进行。在系统设计的过程中,才会知道哪一种技术比较好用,但是具体的用到的技术应该不会太偏离我以上讲的技术。

3 详细设计

根据题目要求及本次课程设计的目的,采用结构体来存储每组数据,定义运动会类和调用库函数进行相应的操作。现把相应的设计思路及各个函数解析如下。

3.1 数据结构设计分析

3.1.1 存储学校信息的结构体

学校信息有学校名称、学校编号、学校总分、男女团体总分。具体结构如下:

struct School//学校信息 { };

3.1.2 存储项目信息的结构体

项目信息有项目编号、项目取前三或前五、项目类别、项目获名者。具体结构如下:

struct Item//项目信息 {

string school_name; string school_id; int total_score; int women_score; int man_score; School()//初始化 { }

school_name = \school_id = \

total_score = women_score = man_score = 0;

};

string item_id; int range_num; char sex;

string winner_id[6]; Item()//初始化 { }

item_id = \sex = '\\0'; range_num = 0;

memset(winner_id,0,sizeof(winner_id));

3.13运动会类

定义一个运动会类,定义和调用起成员函数,成员变量,完成系统的功能。 代码如下: class SportMeeting { public:

void load(); void save(); void sort(); void search(); void add(); void del(); void modify();

private:

void update(); void sort_by_id(); void sort_by_total(); void sort_by_man();

};

void sort_by_women(); void search_by_school(); void search_by_item();

multimap school;//定义个学校的map类 multimap item;//定义项目的map类

3.2 各个函数分析

3.2.1 主函数

函数原型:int main()

main()函数主要是整个系统的控制端,主要功能是控制整个程序的运行。从主函数开始调用各相关函数来达到相应的功能。由于有多个不同的选项,所以用一个while(){swithch()}语句控制每个函数调用,控制起来方便、明了。关键代码如下: while(1)

{

cout<<\修改项目信息\cout<<\添加项目\cout<<\删除项目\cout<<\查询选项\cout<<\查看排名\cout<<\退出系统\cout<<\请输入你的选择:\cin >> select; switch(select)

{ case 1:

meet.modify(); break;

case 2:

meet.add();


(最新版)数据结构课程设计报告2402125(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2010高考政治主观题考前最后预测学案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: