- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
运动员分数统计系统
一、设计冃的与内容
1、运动会分数统计
任务:参加运动会有n个学校,学校编号为1……n。比赛分成m个男 子项目,和w个女子项目。项目编号为男子1 m,女了 m+l m+Wo不同
的项II取前五名或前三名积分:取前五名的枳分分别为:7、5、3、2、1,前三 名的积分分别为:5、3、2;哪些収前五名或前三名由学生自己设定。
(m=20,n=20)
功能要求:1)?可以输入%个项冃的前三名或前五名的成纟贵:
.能统计各学校总分,
.可以按学校编号、学校总分、男女团体总分排序输出;
.可以按学校编号查询学校某个项冃的情况;可以按项冃编号査询取得 前三或前五名的学校。
规定:输入数据形式和范围:20以内的整数(如果做得更好町以输入 学校的名称,运动项冃的名称)
输出形式:有英文提示,各学校分数为整形
界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完 成相关的功能要求。
存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相 关数据耍存储在数据文件中。(数据文件的数据读写方法等相关内容在c语言程 序设计的书上,请自学解决)请在放后的上交资料中指明你川到的存储结构;
测试数据:要求使用1、全部合法数据:2、整体非法数据;3、局部菲法数 据。进行程序测试,以保证程序的稳定。测试数据及测试结果请在上交的资料屮 写明;
测试用例:
学校数为5,男子项II数为3,女子项R数为3,参赛人数11
学校代号
项冃代号
姓名
成绩
1
1
Su
3
2
5
Dong
5
3
3
Fly
3
4
5
Han
2
5
3
Rain
7
1
3
Lucy
5
2
1
Yan
2
3
1
Wang
5
4
3
An
1
5
3
He
2
1
5
zhen
3
一、 数据结构的选择和概要设计
I、数据结构
运动会分数统计程序用到的是顺序表的数据类型,由于一开始参赛人数就是 确定下來的,参赛人数即为顺序表表长,故顺用表的表长也就确定下來了,顺用 表的主要内容有学校数、男了项冃数、女子项n数、总的参赛人数。节点主要内 容包括:学生的姓名、学校代号、项冃代号以及学生的成绩。
顺序表类型如下: typedef struct { char name| l(M)|; int xuexiao;
〃节点
〃姓名
〃学校代号
int xiangmu; int score;
}schcx)ltype;
〃项冃代号
〃成绩
typedef struct {
schoo 1 type sc[size]; int n ;
〃顺序农
//学校数
int m; int w;
〃男子项冃数
〃女子项冃数
int r;
〃总参赛人数
Jseqlist;
该程序要求统计各个学校的总分及男女项II总分,为便于排序,另川?顺序 表将计算出来的总分放于其中,节点内容包括关键字key(即算出来的总分)xiaohao (川来放学校的代号)解决了排序后能输出确定的学校代号及总分。
顺序表类型如下: typedef struct { int key; int xiaohao;
Jrecordlype;
〃节点
〃放分
〃放学校代号
typedef struct { recordtype r|size|;
〃顺序表为方便排序而建立的
〃工作单元
Jlist;
2、概要设计
参赛人数即为顺序表表长,在顺序表节点屮有成绩,在建立学生信息时可直接 输入成绩,输入学生信息时编码是自动加的,统计学校总分或男女项冃总分时都 用2个fo「循环来实现,统计出来的得分都可放入另一个顺序表中以便于排序,在 查询时川户输入要查询的学校代号或项II代号即对查询,在建立信息时会调川保 存在文件的函数来实现学生信息的保存。
结构图如下:
成员惭数名及功能介绍如下:
成员函数名
作 用
sct(seqlist *L)
建立参赛者信息
search l(seqlist *L)
按学校代号查某个项冃的情况
search2(seqlist *L)
按项冃代号査収得成绩的学校
tongfen(seqlist *LJist *s)
统计各学校总分
tongfenboy(seqlist *LJist *s)
统计乞学校男子项冃总分
tongfengirl(seqlist *L,list *s)
统计各学校女子项冃总分
oulput(seqlist *L)
输出
seqlist *loadfile()
提取到文件函数
savefile(seqlist *s)
保存到文件函数
paixu(seqlist *LJist *s)
直接插入排序
三、详细设计和编码 主函数
〃按学校代号查来个项以下是成员函数介绍void set(seqlist
〃按学校代号查来个项
以下是成员函数介绍
void set(seqlist水L
文档评论(0)