ImageVerifierCode 换一换
格式:DOCX , 页数:42 ,大小:425.18KB ,
资源ID:30729948      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/30729948.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机软件及应用数据结构课设 运动会分数统计c++.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机软件及应用数据结构课设 运动会分数统计c++.docx

1、计算机软件及应用数据结构课设 运动会分数统计c+学 号 *天津城市建设学院数据结构课程设计设计说明书运动会分数统计起止日期: 2011年 1月 10 日 至 2011 年 1月15日学生姓名李翔班级08计算机2班成绩指导教师(签字) 电子与信息工程系2011年 1 月 15 日一、设计目的熟悉各种数据结构和运算,会使用数据结构的基本操作解决一些实际问题。二、设计要求 (1)重视课程设计环节,用严谨、科学和踏实的工作态度对待课程设计的每一项任务;(2)按照课程设计的题目要求,独立地完成各项任务,严禁抄袭;凡发现抄袭,抄袭者与被抄袭者皆以零分计入本课程设计成绩。凡发现实验报告或源程序雷同,涉及的全

2、部人员皆以零分计入本课程设计成绩;(3)学生在接受设计任务后,首先要按设计任务书的要求编写设计进程表;(4)认真编写课程设计报告。三、设计内容(运动会分数统计查询系统)(一)需求分析1.在该程序中,参赛学校编号为1n(n=20)。比赛分成m(m=30)个男子项目和w(w初始化项目信息(编号、取名次等情况)。2每个项目中取得名次的学校统计。 3根据每个学校的成绩计算对应的得分,包括总得分、男团总分、女团总分。4查询功能,用户按学校编号查询学校具体信息,按项目编号查询,存储本次运动会信息,以及查询已录入的往届运动会信息(须知道准确的存储文件的文件名)5登录模块,为了数据安全,设置登录功能(本功能尚

3、待完善)。6流程图设计:(附:登陆名:lixiang 密码:5211) (三)详细设计(源代码)/08710211.hstruct s_p /学校-项目对应关系数组单元(广义2维线性表) int attend; /是否在该项目取得名次 char sex; /该项目性质b或g(冗余) int nature; /该项目取前几名(冗余) int NO; /在该项目中排名 int score; /在该项目中得分;struct s int bianhao; /学校的编号 int balcore; /学校的男团总分 int brank; / 学校男团排名 int galcore; /学校的女团总分 int

4、 grank; / 学校女团排名 int alscore; /学校的团体总分 int arank; /学校团体总排名;class yonghuprivate: char name100; double code;public: yonghu( char *a,double b) strcpy(name,a); code=b; void chushi( char *a,double b); bool paiduan(char *a,double b); ;class atheletprivate: int m; /m个项目 int b; /男子项目数 int g; /女子项目数 int n; /

5、n个学校 int t; /取前三名的项目数 int *T; /记录取前三名的项目编号 int *F; /记录取前五名的项目编号 s_p *a; /定义学校项目广义二维线性表(本次只在此两个线性表实现文件读写) s *B; /定义学校一维线性表(同上) bool sf;public: void chushi( ); /项目学校信息初始化 void luruchengji(); /学校成绩录入 void jisuan(); /学校排名计算 void bianhao( ); /学校按编号排名 void zongcore( ); /学校按总分排名 void bscore(); /学校按男团总分排名 v

6、oid gscore(); /学校那女团总分 void xuexiao_bianhao(); /学校按编号查询 void xiangmu(); /按项目查询 void W(char s); /功能函数 void cun( ); /存盘函数 void du( ); /读盘函数 void test(); /综合测试 void login( ); /登录;/08710211.cpp#include#include#include#include#include #include08710211.husing namespace std;void yonghu:chushi( char *a,doub

7、le b) strcpy(name,a); code=b;bool yonghu:paiduan(char *a,double b) if(strcmp(a,name)=0&b=code) return 1; else return 0;void athelet:chushi( ) /*1.初始化项目*/ L:cout男子项目数:b; if(b=0) cout数据错误,请重新输入!endl; goto L; J:cout女子项目数:g; if(g=0) cout数据错误,请重新输入!endl; goto J; m=b+g; cout学校数:n; if(n5) cout学校数据(不得少于5个)错

8、误,请重新输入!endl; goto L1; a=new s_p *n+1; B=new sn+1; for(int i=1;i=n;i+) ai=new s_pm+1; /*2.项目如何取名次的设置(取前3或前5)*/ V:cout请输入有几个项目取前三名t; if(t=m) cout输入错误,请重新输入!endl; goto V; T=new intt+1; /用来记录取前3名的项目编号 F=new intm-t+1; /用来记录取前5名的项目编号 L2:cout请依此输入这t个项目的编号endl; for(i=1;iTi; if(Ti=m) cout 项目编号超出范围,请充值数据!end

9、l; goto L2; cout取前3名项目编号为:endl; for(i=1;i=t;i+) coutTi号项目 ; coutendl; cout取前5名项目编号为:endl;/输出同时计算取前5名的项目的编号 int k=1; for(i=1;i=m;i+) int y=1; for(int j=1;j=t;j+) if(i=Tj) y=0; if(y=1) Fk+=i;coutFk-1号项目 ; coutendl; /*对s_p a二维数组的初始化信息,默认情况下,nature是取前5名的*/ for(i=1;i=n;i+) for(int j=1;j=m;j+) aij.attend=

10、0; aij.nature=5; aij.NO=0; aij.score=0; if(j=b) aij.sex=b; else aij.sex=g; /*符合条件情况下,则nature修改为取前3名*/ for(i=1;i=n;i+) for(int j=1;j=m;j+) for(int h=1;h=t;h+) if(j=Th) aij.nature=3; /*测试数据的函数*/ for(i=1;i=n;i+) for(int j=1;j=m;j+) coutaij.natureaij.sex ; coutendl; cout项目初始化完毕endlendl; void athelet:lur

11、uchengji() /*1.(1号功能)录入成绩功能*/ /*取前3名项目的成绩*/ cout现在录入取前三名的项目的成绩:endl; int one,two,three,four,five; for(int i=1;i=t;i+) A1:coutTione; if(onen) cout输入错误,请重新录入;goto A1;/异常处理 if(aoneTi.attend=1) cout输入错误,请重新录入;goto A1;/异常处理,下同 aoneTi.attend=1; aoneTi.NO=1; aoneTi.score=5; B1:coutTitwo; if(twon) cout输入错误,

12、请重新录入;goto B1;/异常处理 if(atwoTi.attend=1) cout输入错误,请重新录入;goto B1; atwoTi.attend=1; atwoTi.NO=2; atwoTi.score=3; C1:coutTithree; if(threen) cout输入错误,请重新录入;goto C1;/异常处理 if(athreeTi.attend=1)cout输入错误,请重新录入;goto C1; athreeTi.attend=1; athreeTi.NO=3; athreeTi.score=2; /*取前5名项目的成绩*/ cout现在录入取前5名的项目的成绩:endl

13、; for(i=1;i=m-t;i+) o1:coutFione; if(onen) cout输入错误,请重新录入;goto o1;/异常处理 if(aoneFi.attend=1) cout输入错误!请重新录入;goto o1; aoneFi.attend=1; aoneFi.NO=1; aoneFi.score=7; p:coutFitwo; if(twon) cout输入错误,请重新录入;goto p;/异常处理 if(atwoFi.attend=1) cout输入错误!请重新录入;goto p; atwoFi.attend=1; atwoFi.NO=2; atwoFi.score=5;

14、 q:coutFithree; if(threen) cout输入错误,请重新录入;goto q;/异常处理 if(athreeFi.attend=1) cout输入错误!请重新录入;goto q; athreeFi.attend=1; athreeFi.NO=3; athreeFi.score=3; r:coutFifour; if(fourn) cout输入错误,请重新录入;goto r;/异常处理 if(afourFi.attend=1) cout输入错误!请重新录入;goto r; afourFi.attend=1; afourFi.NO=4; afourFi.score=2; S:c

15、outFifive; if(fiven) cout输入错误,请重新录入;goto S;/异常处理 if(afiveFi.attend=1) cout输入错误!请重新录入;goto S; afiveFi.attend=1; afiveFi.NO=5; afiveFi.score=1; cout成绩录入完毕endlendl; void athelet:jisuan() /*(2号功能)统计各学校总分*/ /*学校数据初始化*/ for(int i=1;i=n;i+) Bi.bianhao=i; Bi.alscore=0; Bi.balcore=0; Bi.galcore=0; Bi.arank=B

16、i.brank=Bi.grank=0; int sum; /*计算学校的男团总得分、女团总得分、总得分*/ for(i=1;i=n;i+) sum=0; for(int j=1;j=b;j+) sum+=aij.score; Bi.balcore=sum; sum=0; for(j=b+1;j=m;j+) sum+=aij.score; Bi.galcore=sum; Bi.alscore=Bi.balcore+Bi.galcore; /*计算学校根据男团总得分的排名*/ s temp; for(i=1;i=n-1;i+) for(int j=i+1;j=n;j+) if(Bi.balcore

17、Bj.balcore) temp=Bi;Bi=Bj;Bj=temp; for(i=1;i=n;i+) Bi.brank=i; /*计算学校根据女团总得分的排名*/ for(i=1;i=n-1;i+) for(int j=i+1;j=n;j+) if(Bi.galcoreBj.galcore) temp=Bi;Bi=Bj;Bj=temp; for(i=1;i=n;i+) Bi.grank=i; /*计算学校根据总得分的排名*/ for(i=1;i=n-1;i+) for(int j=i+1;j=n;j+) if(Bi.alscoreBj.alscore) temp=Bi;Bi=Bj;Bj=tem

18、p; for(i=1;i=n;i+) Bi.arank=i; cout个学校积分、排名计算完毕endlendl; void athelet:bianhao( ) /*可以查询任意编号学校的总分、男团总分、女团总分*/ /*按编号排序输出学校的总分、男团总分、女团总分*/ for(int i=1;i=n-1;i+) for(int j=i+1;jBj.bianhao) s temp=Bi;Bi=Bj;Bj=temp; /*按编号输出成绩*/ cout按编号输出:endl; cout学编号setw(10)团总分setw(10)团排名setw(10)男总分setw(10) 男团排setw(10)女团

19、总分setw(10)女团排endl; for(i=1;i=n;i+) for(int j=1;j=n;j+) if(Bj.bianhao=i) coutBj.bianhaosetw(10)Bj.alscoresetw(10)Bj.aranksetw(10)Bj.balcoresetw(10) Bj.branksetw(10)Bj.galcoresetw(10)Bj.grankendl; cout按编号输出完毕endlendl; void athelet:zongcore( ) /*按总得分排名输出成绩*/ /*按团总分排序输出学校的总分、男团总分、女团总分*/ cout按总得分排名输出:end

20、l; cout学编号setw(10)团总分setw(10)团排名setw(10)男总分setw(10) 男团排setw(10)女团总分setw(10)女团排endl; for(int i=1;i=n;i+) for(int j=1;j=n;j+) if(Bj.arank=i) coutBj.bianhaosetw(10)Bj.alscoresetw(10)Bj.aranksetw(10)Bj.balcoresetw(10) Bj.branksetw(10)Bj.galcoresetw(10)Bj.grankendl; cout按团体总分排名书输出完毕endlendl; void athelet:bscore() /*按男团总分排序输出学校的总分、男团总分、女团总分*/ cout男排名endl; cout学编号setw(10)团总分setw(10)团排名se

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1