C语言运动会计分程序编写_第1页
C语言运动会计分程序编写_第2页
C语言运动会计分程序编写_第3页
C语言运动会计分程序编写_第4页
C语言运动会计分程序编写_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、任务:参加运动动会有n个学学校,学校编编号为1n。比赛分分成m个男子子项目,和ww个女子项目目。项目编号号为男子1m,女子子m+1m+w。不不同的项目取取前五名或前前三名积分;取前五名的的积分分别为为:7、5、33、2、1,前前三名的积分分分别为:55、3、2;哪些取前五五名或前三名名由学生自己己设定。(mm=20,n=200)功能能要求:1).可以输入入各个项目的的前三名或前前五名的成绩绩;2)能统计各各学校总分,3)可以按学校编号、学校总分、男女团体总分排序输出;4).可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前三或前五名的学校。 规定:输入数据形式和范围:20以内的整数

2、(如果做得更好可以输入学校的名称,运动项目的名称)输出形式:有中文提示,各学校分数为整形界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。(数据文件的数据读写方法等相关内容在c语言程序设计的书上,请自学解决)请在最后的上交资料中指明你用到的存储结构;测试数据:要求使用1、全部合法数据;2、整体非法数据;3、局部非法数据。进行程序测试,以保证程序的稳定。测试数据及测试结果请在上交的资料中写明;#includde #includde #includde #includdeusing

3、 nnamesppace sstd; int n,mm,w;struct pro /表示项目目的结构体 stringg namee; /项项目名称 int snnum6; /前前5名学校的的编号 p21; struct schoool /表表示学校的结结构体 int nuum; stringg namee; /学学校名称 int sccore; /学校总总分 int maale; /男子总分分 int feemale; /女子子总分 sch211; int inttegrall15=7,5,3,2,11;/前前五名得分int inttegrall23=5,3,2;/前三名得分分 void in

4、nput() int i,j,y,xx; printff(输入学学校数目:); y=0; scanf(%d,&n); if(n=1&n=20)y=1; if(y)bbreak; elseprinttf(输入入数据有误,请请重新输入:); for(i=1;i=n;i+) printtf(输入入第%d个学学校的名称:,i); scanff(%s,&schhi.nname); schii.scoore=0; schii.femmale=00; schii.malle=0; schii.numm=i; printff(输入男男子项目数和和女子项目数数:); y=0; scanf(%d%dd,&m,&w

5、); if(m=1&ww=11)y=1; if(y)brreak; else prrintf(输入数据据有误,请重重新输入:); for(i=11;i=mm+w;i+) printf(输入第%d个项目的的名称:nn,i); scanf(%s,& e); printf(输入第%d个项目的的前5名的学学校编号:n,i); for(j=11;j=11&x=20)y=1; if(y)brreak; else prrintf(输入数据据有误,请重重新输入:); pi.snnumj=x; schx.scoree+=inttegrallj-1; if(i=mm)schx.maale+=iint

6、egrralj-1; else scchx.femalle+=inntegraalj-11; void prrint(iint i) printf(%d%dd%s%d%d%d%dd%d%d,schi.nuum,settw(10),schi.naame,seetw(8),schi.sccore,ssetw(99) ,schi.malee,setww(10),schii.femmale); void biianhaoo() /按编号排序序 int i,jj; school t; for(i=11;in;i+) for(j=ii;jschhj.nnum) t=schi;scchi=schjj;sch

7、hj=tt; printf(n按编编号排列:n); printf(编号 学学校名称 总总分 男子总总分 女子总总分n); for(i=11;i=nn;i+) print(ii); void zoongfenn() /按学校总分分排序 int i,jj; school t; for(i=11;in;i+) for(j=ii;j=nn;j+) if(schi.sccoresschj.scorre) t=schi;scchi=schjj;schhj=tt; printf(n按学学校总分排列列:n); printf(编号 学学校名称 总总分 男子总总分 女子总总分n); for(i=11;i=nn;i

8、+) print(ii); ofstreaam fouut;fout.oppen(运运动会分数统统计.txtt); fout编号 学校校名称 总分分 男子总分分 女子总分分enndl;for(i=11;i=nn;i+) foutschii.nummsettw(13)schhi.nnamesetw(8)sschi.scorreseetw(9) schii.malleseetw(100)scchi.femalleenndl; fout.cllose(); void maalezf() /按按学校男总分分排序 int i,jj; school t; for(i=11;in;i+) for(j=ii;

9、j=nn;j+) if(schi.maalescchj.male) t=schi;scchi=schjj;schhj=tt; printf(n按学学校男子总分分排列:nn); printf(编号 学学校名称 总总分 男子总总分 女子总总分n); for(i=11;i=nn;i+) print(ii); void feemalezzf() /按学校女女总分排序 int i,jj; school t; for(i=11;in;i+) for(j=ii;j=nn;j+) if(schi.feemaleschjj.femmale) t=schi;scchi=schjj;schhj=tt; printf

10、(n按学学校女子总分分排列:nn); printf(编号 学学校名称 总总分 男子总总分 女子总总分n); for(i=11;i=11&s=n)y=11; if(y)brreak; else prrintf(输入数据据有误,请重重新输入:); printf(该学校相相关信息:n); printf(编号 学学校名称 总总分 男子总总分 女子总总分n); for(i=11;i=11&s=n)y=11; if(y)brreak; else prrintf(输入数据据有误,请重重新输入:); printf(%s前55名学校编号号及名称为n,ps.naame); printf(名次 编编号 学校名名称n

11、); for(i=11;i=55;i+) printf( %d %d%d%sn,i,pss.snuumi,setw(12),ssch pps.ssnumii .nname); printf(n); void soolve() /菜单单函数 int z; while(11) printf(n选择择您需要的操操作(选择序序号):nn); printf(1.按学学校编号排序序输出n); printf(2.按学学校总分排序序输出n); printf(3.按学学校男总分排排序输出nn); printf(4.按学学校女总分排排序输出nn); printf(5.查询询某个学校成成绩n); printf(6.

12、查询询某个项目成成绩n); printf(7.结束束nn); scanf(%d,&z); if(z=11)biannhao(); if(z=22)zonggfen(); if(z=33)maleezf(); if(z=44)femaalezf(); if(z=55)cxscch(); if(z=66)cxxmm(); if(z=77)breaak; int maiin() /主函数 input(); solve(); return 0; #includde #includde #includde #includdeusing nnamesppace sstd; int n; /n个学学校 in

13、t m; /m个男男子项目 int w; /w个女女子项目 struct pro /表示项目目的结构体 string name; /项目目名称 int snuum6; /前55名学校的编编号 p21; struct schoool /表表示学校的结结构体 int numm; string name; /学校校名称 int scoore; /学校总分分 int malle; /男子总分 int femmale; /女子总总分 sch211; int inttegrall5=7,5,33,2,1;/前五五名得分 void innput() int i,jj,y,x; printf(输入学校校数目:

14、); y=0; while(11) scanf(%d,&n); if(n=11&n=20)y=1; if(y)brreak; else prrintf(输入数据据有误,请重重新输入:); for(i=11;i=nn;i+) printf(输入第%d个学校的的名称:,i); scanf(%s,&schii.namme); schi.scoree=0; schi.femalle=0; schi.male=0; schi.num=ii; printf(输入男子子项目数和女女子项目数:); y=0; while(11) scanf(%d%d,&m,&w); if(m=1&ww=11)y=1; if(y

15、)brreak; else prrintf(输入数据据有误,请重重新输入:); for(i=11;i=mm+w;i+) printf(输入第%d个项目的的名称:nn,i); scanf(%s,& e); printf(输入第%d个项目的的前5名的学学校编号:n,i); for(j=11;j=11&x=20)y=1; if(y)brreak; else prrintf(输入数据据有误,请重重新输入:); pi.snnumj=x; schx.scoree+=inttegrallj-1; if(i=mm)schx.maale+=iintegrralj-1; else scchx.fem

16、alle+=inntegraalj-11; void prrint(iint i) printf(%d%dd%s%d%d%d%dd%d%d,schi.nuum,settw(10),schi.naame,seetw(8),schi.sccore,ssetw(99) ,schi.malee,setww(10),schii.femmale); void biianhaoo() /按编号排序序 int i,jj; school t; for(i=11;in;i+) for(j=ii;jschhj.nnum) t=schi;scchi=schjj;schhj=tt; printf(n按编编号排列:n);

17、 printf(编号 学学校名称 总总分 男子总总分 女子总总分n); for(i=11;i=nn;i+) print(ii); void zoongfenn() /按学校总分分排序 int i,jj; school t; for(i=11;in;i+) for(j=ii;j=nn;j+) if(schi.sccoresschj.scorre) t=schi;scchi=schjj;schhj=tt; printf(n按学学校总分排列列:n); printf(编号 学学校名称 总总分 男子总总分 女子总总分n); for(i=11;i=nn;i+) print(ii); ofstreaam f

18、ouut;fout.oppen(运运动会分数统统计.txtt); fout编号 学校校名称 总分分 男子总分分 女子总分分enndl;for(i=11;i=nn;i+) foutschii.nummsettw(13)schhi.nnamesetw(8)sschi.scorreseetw(9) schii.malleseetw(100)scchi.femalleenndl; fout.cllose(); void maalezf() /按按学校男总分分排序 int i,jj; school t; for(i=11;in;i+) for(j=ii;j=nn;j+) if(schi.maalescc

19、hj.male) t=schi;scchi=schjj;schhj=tt; printf(n按学学校男子总分分排列:nn); printf(编号 学学校名称 总总分 男子总总分 女子总总分n); for(i=11;i=nn;i+) print(ii); void feemalezzf() /按学校女女总分排序 int i,jj; school t; for(i=11;in;i+) for(j=ii;j=nn;j+) if(schi.feemaleschjj.femmale) t=schi;scchi=schjj;schhj=tt; printf(n按学学校女子总分分排列:nn); printf(编号 学学校名称 总总分 男子总总分 女子总总分n); for(i=11;i=11&s=n)y=11; if(y)brreak; else prrintf(输入数据据有误,请重重新输入:); printf(该学校相相关信息:n); printf(编号 学学校名称 总总分 男子总总分 女子总

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论