1、 数据结构课程设计 运动会分数统计系统运动会分数统计系统 专专 业:网络工程业:网络工程 班班 级:级: 学学 号号 姓姓 名:名: 指导老师:指导老师: 2012 年 6 月 29 日 一、课程设计目的一、课程设计目的 本课程设计的目的就是要达到理论与实际应用相结合,使同学们能够根据数据对象的 特性,学会数据组织的方法,能把现实世界中的实际问题在计算机内部表示出来,并培养基 本的、良好的程序设计技能。 二、课程设计题目二、课程设计题目 任务:参加运动会有 n 个学校,学校编号为 1n。比赛分成 m 个男子项目,和 w 个女子 项目。项目编号为男子 1m,女子 m+1m+w。不同的项目取前五名
2、或前三名积分;取 前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些取前五名或前 三名由学生自己设定。 (ml; ek=l; if(lnum | lp=NULL; h-p=s; h=s; 四、设计思想四、设计思想 1. 数据输入: 根据运动项目的序号,输入该项目取得前三名或前五名 成绩的学校的编号。 2. 数据的处理:把输入到临界链表的数据,装入存储学校信息的二维 数组中。 3. 普通输出:按学校的编号输出数据。 4. 排序输出:分别按照总成绩、男子团体成绩、女子团体成绩从大到 小的顺序输出数据。 5. 查询输出: 可以按学校编号查询学校某个项目的情况;可以按项目 编
3、号查询取得前三或前五名的学校。 五五、程序流程图:程序流程图: 开始 输 入 数 据 处 理 按 学 校 序 号 输 出 按 总 成 绩 排 序 输 出 按 男 女 团 体 成 绩 输 出 按 学 校 编 号 查 询 按 项 目 编 号 查 询 六、程序编写六、程序编写 #include using namespace std; static int num,man,woman; class infor public: int x; infor *p; ; void input(infor *a) int t,z,l,m,k; bool du; int e6; infor *s,*h; for
4、(int i=1;iz; ai.x=z; ai.p=NULL; h= if(z!=1 while(z!=1 if(z=1) t=3; else if(z=0) t=5; /do coutl; ek=l; if(lnum | lp=NULL; h-p=s; h=s; /* if(t=3) if(e1=e2 | e1=e3 | e2=e3) du=true; else du=false; if(t=5) if(e1=e2 | e1=e3 | e1=e4 | e1=e5 | e2=e3 | e2=e4 | e2=e5 | e3=e4 | e3=e5 | e4=e5) du=true; else du
5、=false; if(du) coutx2=+scor; schoolp1-x3=+scor; p1=p1-p; if(scor=1) scor=2; if(scor=0) scor=1; for(int i1=man+1;i1x4=+scor; / schoolp1-x2=+scor; p1=p1-p; scor=scor-2; if(scor=1) scor=2; if(scor=0) scor=1; for(int ad=1;adaj-12) temp01=aj1;temp02=aj2;temp03=aj3;temp04=aj4 ; aj1=aj-11;aj2=aj-12;aj3=aj-13;aj4=aj-14; aj-11=temp01;aj-12=temp02;aj-13=temp03;aj-14=te mp04; for(int i1=1;i1aj-13) temp01=aj1;temp02=aj2;temp03=aj3;temp04=aj4 ; aj1=aj-11;aj2=aj-12;aj