《数据结构课程设计》预习日志
任务一:赛事信息管理

struct T(存储队伍信息)
const int N = 450;
struct team
{
/*变量说明
num:参赛队编号
name:参赛作品名称
school:参赛学校
kind:赛事类别
student:参赛者
teacher:指导教师
res:初赛成绩
*/
int num;
string name;
string school;
string kind;
string student;
string teacher;
int res;
}t[N];
read(读取数据)
void read()
{
从team.txt中读取队伍信息
将队伍信息存入 t 数组
}
random(随机生成初赛成绩)
void random()
{
遍历t数组
利用 Rand 函数生成60~100随机数
将随机数存入t数组中的res变量
}
op(数据修改)
void op()
{
读入一个变量 o ,表示需要执行的操作
if(o == 'i') insert();
else if(o == 'd') delete();
else if(o == 'u') uplete();
else if(o == 'l') locate();
}
// 增加数据操作
void insert()
{
读入需要增加的队伍信息
将信息添加到t数组中
CreateNode创建新节点
}
// 删除数据操作
void delete()
{
读入需要删除的队伍编号
将该条信息从t数组中删除
}
// 修改数据信息
void update()
{
读入需要修改的队伍信息
将该条信息从t数组中删除
}
任务二:决赛现场模拟

tt(队列)
对初赛成绩使用归并排序
将排序后的序列一次进入tt队列
将tt队列平均分为17组,分别按序进入t1~t17队列中
order(输出秩序册)
void imitate(int num)
{
num表示选择的是哪个房间的秩序
依次出队并输出
}
imitate(秩序模拟)
获取需要读取的是哪一个房间的秩序
void imitate(int num)
{
已经完赛的队伍出队,并进入数组,表示已经完赛
队首表示正在比赛的元素
未进入数组且不在队首的元素表示候场
}
任务三:决赛地图导览

vertex(存储节点)
typedef struct
{
/*
code:编号
name:名称
intro:介绍
*/
string code;
string name;
string intro;
}vertex;
MGraph(构建无向图)
class MGraph
{
public:
MGraph(int n, int e);
void Floyd();
// 输出所有路径
void Allpathlengths();
// 输出两点间最短路径
void Printshortpath();
private:
// 顶点信息
vertex a[Maxsize];
// 每条边的长度
int arc[Maxsize][Maxsize];
// 顶点数,边数
int vertexNum, arcNum;
// 路径
int dist[Maxsize][Maxsize];
// 路径长度
string path[Maxsize][Maxsize];
};
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。