数据结构课程设计运动会分数统计

上传人:桔**** 文档编号:412125846 上传时间:2023-10-21 格式:DOC 页数:12 大小:81.01KB
返回 下载 相关 举报
数据结构课程设计运动会分数统计_第1页
第1页 / 共12页
数据结构课程设计运动会分数统计_第2页
第2页 / 共12页
数据结构课程设计运动会分数统计_第3页
第3页 / 共12页
数据结构课程设计运动会分数统计_第4页
第4页 / 共12页
数据结构课程设计运动会分数统计_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《数据结构课程设计运动会分数统计》由会员分享,可在线阅读,更多相关《数据结构课程设计运动会分数统计(12页珍藏版)》请在金锄头文库上搜索。

1、实验报告班级: 姓名: 学号日期课题一 运动会分数统计一.需求分析:1任务:参加运动会有n个学校,学校编号为1n。比赛分成m个男子项目,和w个女子项目。项目编号为男子1m,女子m+1m+w。不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些项目取前五名或前三名由学生自己设定。(m=20,n=0数据关系:R1=|ai-1,aiD,I=2,,n基本操作: StrAssign(&T,chars)初始条件:chars是字符串常量。操作结果:生成一起值等于chars的字符串T.StrCopy(&T,s)初始条件: 串S存在操作结果:由串复制得串

2、T.StrEmpty(s)初始条件: 串S存在。操作结果:若S为空串,则返回TRUE,否则返回FALSE.Strcompare(S,T)初始条件:串S和T存在。操作结果:若ST,则返回0;若S=T,则返回值=0,若ST,则返回值0.Strlength(S)初始条件: 串S存在。操作结果:返回S的元素个数,称为串的长度。ClearString(&S)初始条件: 串S存在。操作结果:将S清为空串。Concat(&T,S1,S2)初始条件:串S1和串S2都存在。操作结果:用Y返回由S1和S2连接而成的新串。2.现性顺序表的抽象数据定义如下:Typedef Struct LNode ElemType

3、*elemInt lengthInt listsize;LNode,*linklist; 3.本程序分为三个模块:1) 主程序模块 main()while(标志!=0) 执行命令; 输入标志; switch(标志) case 标志:命令;break; default:命令;2)赋值模块实现各个数据的赋值 Sho fuzhi() for( )输入学校的名字 for()输入几个体育项目For()按成绩输入各个体育项目的学校的名次3)排序模块:对各项成绩进行排序Void paixu( ) 给i,j,赋初值; For() If判断; 排序; 输出结果;4)查询模块;根据要求查询成绩的排名情况 Void

4、 chaxun () 定义临时变量; 输入要查找的代码; For() If(命令=进入) 输出成绩; 各个模块之间的关系如下: 主程序模块 赋值模块 排序模块 查找模块三详细设计:#includeiostream.h #includemalloc.h #include #includestdlib.h #define m 4 #define n 5 1.运动项目的类型 typedef struct sport char sportname20; int num;int s; spo; typedef struct sport1 char schoolname20; spo sportsm; i

5、nt zong,boy,girl,zong1,boy1,girl1; spos,*spor; 2.学校名字的类型typedef struct school spos shoolsn; *sho,shos; 3.进行赋值操作,输入学校名字和运动会项目以及其的排名情况sho fuzhi() sho l;int a,b,c,d,e; l=(shos*)malloc(sizeof(shos); int i,j; for(i=0;in;i+) cout请输入i+1个学校的名字l-shoolsi.schoolname;system(cls); for(i=0;im;i+) cout请输入i+1个运动项目的

6、名字l-shools0.sportsi.sportname;system(cls); for(j=0;j+;jshoolsj.sportsi.sportname,l-shools0.sportsi.sportname); for(i=0;in;i+) for(j=0;jshoolsi.sportsj.num=0;l-shoolsi.sportsj.s=0; l-shoolsi.zong=0;l-shoolsi.boy=0;l-shoolsi.girl=0; for(i=0;im-3;i+) cout请按各学校的代码进行成绩输入endl; for(j=0;jn;j+) coutj+1.shool

7、sj.schoolname; coutendl; cout请输入shools0.sportsi.sportnameabcde;system(cls); l-shoolsa-1.sportsi.num=7; l-shoolsb-1.sportsi.num=5; l-shoolsc-1.sportsi.num=3; l-shoolsd-1.sportsi.num=2; l-shoolse-1.sportsi.num=1; for(i=m-3;im;i+) cout请按各学校的代码进行成绩输入endl; for(j=0;jn;j+) coutj+1.shoolsj.schoolname ; cout

8、endl; cout请输入shools0.sportsi.sportnameabc;system(cls); l-shoolsa-1.sportsi.num=5; l-shoolsb-1.sportsi.num=3; l-shoolsc-1.sportsi.num=2; return l; void sum(sho l) int i,j; for(i=0;in;i+) for(j=0;jshoolsi.zong=l-shoolsi.zong+l-shoolsi.sportsj.num; for(j=0;jshoolsi.boy=l-shoolsi.boy+l-shoolsi.sportsj.n

9、um; for(j=m-3;jshoolsi.girl=l-shoolsi.girl+l-shoolsi.sportsj.num; coutshoolsi.schoolname总分为shoolsi.zongendl; 4.对输入的分数情况进行排序void paixu1(sho l) int i,j,k=1; int temp=0; for(j=0;jn;j+) for(i=0;ishoolsi.zongl-shoolsj.zong) k+; l-shoolsj.zong1=k; k=1; for(j=1;jn+1;j+) for(i=0;ishoolsi.zong1=j) cout总分第j名学

10、校为:shoolsi.schoolnameendl; void paixu2(sho l) int i,j,k=1; int temp=0; for(j=0;jn;j+) for(i=0;ishoolsi.boyl-shoolsj.boy) k+; l-shoolsj.boy1=k; k=1; for(j=1;jn+1;j+) for(i=0;ishoolsi.boy1=j) cout男子第j名学校为:shoolsi.schoolnameendl; void paixu3(sho l) int i,j,k=1; int temp=0; for(j=0;jn;j+) for(i=0;ishoolsi.girll-shoolsj.girl) k+; l-shoolsj.girl1=k; k=1; for(j=1;jn+1;j+) for(i

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号