导读 大家好我是琪琪,奥赛运动会管理系统,关于奥赛田径管理系统很多人还不知道,那么现在让我们一起来看看吧!

大家好我是琪琪,奥赛运动会管理系统,关于奥赛田径管理系统很多人还不知道,那么现在让我们一起来看看吧!

1、这是源代码哦,要加分的!~~~~~#include #include #include #includeint a,b,c,d,i,j;struct node{int num;};struct node *f[22];void exit0(){FILE *fp;int k;alp:if((fp=fopen("sore.txt","w"))==NULL){printf("创建文件失败\n");printf(" 1*****重试\n");printf(" 2*****强制退出(数据将不会保存到文件)\n");printf(" 3*****回到主菜单\n");alj: scanf("%d",&k);if(k==1)goto alp;else if(k==2)exit(0);else if(k==3)return;else{printf("输入错误,请重新输入:");goto alj;}}fprintf(fp,"\n\n");fprintf(fp,"运动会分数统计表\n\n\n");fprintf(fp,"项目代号");for(i=1;ifprintf(fp,"%5d",i);fprintf(fp," ");fprintf(fp,"\n 学校代号\n");for(i=1;i{fprintf(fp,"%10d",i);for(b=1;b{fprintf(fp,"%5d",f[i][b].num);}fprintf(fp,"\n");}fprintf(fp,"\n\n");fprintf(fp," 注:本次运动会有%d个学校参赛\n\n",a);fprintf(fp," 其中1 ~ %d组是男子组,%d ~ %d组是女子组\n",c,c+1,c+d);printf("\n比赛成绩已保存到当前路径下的sore.txt文件中\n\n");fclose(fp);exit(1);}int choose(){int choo;printf("\n\n 1*输入成绩\n");printf(" 2*统计各学校的总分\n");printf(" 3*出按学校编号排序输\n");printf(" 4*按学校总分排序输出\n");printf(" 5*按男团体总分排序输出\n");printf(" 6*按女团体总分排序输出\n");printf(" 7*按学校编号查询学校某个项目的成绩\n");printf(" 8*按项目编号查询取得前三或前五名的学校\n");printf(" 9*退出\n\n");printf("请选择:");scanf("%d",&choo);return(choo-1);}void input(){int ab,ac,ae,af,g=1,get[5]={0,0,0,0,0};printf("\n请输入项目代号:");ale:scanf("%d",&ab);if(ab>c+d||ab{printf("\n此项目代号不存在,重新输入\n");goto ale;}ae=0;for(i=0;i{if(f[i][ab].num!=0){ae=1;break;}}if(ae==1){al2: printf("\n此项目成绩曾经已被录入过,是否要重新录入(您输入的项目代号可能有误,强烈建议您查证后再录入):\n");printf(" 1++++重新录入(若重新录入,以前的该项目成绩将被删除)\n");printf(" 2++++不要,待查证后再录入\n\n");scanf("%d",&af);if(af==2){printf("您已取消录入!!!!!\n");return;}else if(af==1){for(i=1;i{if(f[i][ab].num!=0){f[i][0].num=f[i][0].num-f[i][ab].num;if(abf[i][c+d+1].num=f[i][c+d+1].num-f[i][ab].num;elsef[i][c+d+2].num=f[i][c+d+2].num-f[i][ab].num;}f[i][ab].num=0;}}elsegoto al2;}al: printf("\n此项目是以前几名为胜出者:\n\n");printf(" 3-------以前三名\n");printf(" 5-------以前五名\n\n");scanf("%d",&ac);if(ac==3){printf("\n请依次输入获胜学校代号:");af=5;for(i=0;i{alq: scanf("%d",&ae);if(ae>a||ae{printf("%d学校代号不存在,重新输入第%d名的学校代号\n",ae,g);goto alq;}for(b=0;b{if(ae==get[b]){printf("同一个学校不能在同一项目中有两个名次,请重新输入第%d名的学校代号!!!\n",g);goto alq;}elseget[b]=ae;}f[ae][0].num=f[ae][0].num+af;f[ae][ab].num=af;if(abf[ae][c+d+1].num=f[ae][c+d+1].num+af;elsef[ae][c+d+2].num=f[ae][c+d+2].num+af;if(af>3)af=af-2;elseaf--;g++;}}else if(ac==5){printf("请依次输入获胜学校代号:");af=7;for(i=0;i{alw: scanf("%d",&ae);if(ae>a||ae{printf("%d学校代号不存在,重新输入第%d名的学校代号\n",ae,g);goto alw;}for(b=0;b{if(ae==get[b]){printf("同一个学校不能在同一项目中有两个名次,请重新输入第%d名的学校代号!!!\n",g);goto alw;}elseget[b]=ae;}f[ae][0].num=f[ae][0].num+af;f[ae][ab].num=af;if(abf[ae][c+d+1].num=f[ae][c+d+1].num+af;elsef[ae][c+d+2].num=f[ae][c+d+2].num+af;if(af>3)af=af-2;elseaf--;g++;}}elsegoto al;printf("\n\n 输入完成 ! ! ! ! \n");}void each(){printf("\n 对应的格式为:\n 学校代号:团体总成绩\n\n ");for(i=1;i{printf("%2d:%3d ",i,f[i][0].num);if(i%3==0)printf("\n ");}}void biaohao(){printf("\n项目代号 ");for(i=1;i{if(i>9)printf("%4d ",i);elseprintf("%5d ",i);}printf("\n");printf("学校代号 \n");for(i=1;i{printf(" %d ",i);for(b=1;b{if(f[i][b].num>9)printf("%4d",f[i][b].num);elseprintf("%5d",f[i][b].num);}printf("\n");}}void zongfen(){struct nod{int ke;int num;};int ha;struct nod *de;de=(struct nod *)malloc(sizeof(struct nod)*a+1);printf("\n 按学校编号排序输出\n\n");printf(" 学校代号 总分\n\n");for(i=1;i{de[i].ke=i;de[i].num=f[i][0].num;}for(i=1;i{for(b=i;b{if(de[b].num>de[i].num){ha=de[b].ke;de[b].ke=de[i].ke;de[i].ke=ha;ha=de[b].num;de[b].num=de[i].num;de[i].num=ha;}}}for(i=1;i{printf("%13d%8d\n",de[i].ke,de[i].num);}}void nanzong(){struct nod{int ke;int num;};int ha;struct nod *de;de=(struct nod *)malloc(sizeof(struct nod)*a+1);printf("\n 按男子团体总分排序输出\n\n");printf(" 学校代号 男子团体总分\n\n");for(i=1;i{de[i].ke=i;de[i].num=f[i][c+d+1].num;}for(i=1;i{for(b=i;b{if(de[b].num>de[i].num){ha=de[b].ke;de[b].ke=de[i].ke;de[i].ke=ha;ha=de[b].num;de[b].num=de[i].num;de[i].num=ha;}}}for(i=1;i{printf("%13d%12d\n",de[i].ke,de[i].num);}}void nvzong(){struct nod{int ke;int num;};int ha;struct nod *de;de=(struct nod *)malloc(sizeof(struct nod)*a+1);printf(" 按女子团体总分排序输出\n\n");printf(" 学校代号 女子团体总分\n\n");for(i=1;i{de[i].ke=i;de[i].num=f[i][c+d+2].num;}for(i=1;i{for(b=i;b{if(de[b].num>de[i].num){ha=de[b].ke;de[b].ke=de[i].ke;de[i].ke=ha;ha=de[b].num;de[b].num=de[i].num;de[i].num=ha;}}}for(i=1;i{printf("%15d%13d\n",de[i].ke,de[i].num);}}void xuexiao(){int dr,dt;printf("\n请输入您要查询的学校代号:");aly:scanf("%d",&dr);if(dr>a||dr{printf("学校代号不存在,重新输入\n");goto aly;}printf("请输入您要查询的项目代号:");alo:scanf("%d",&dt);if(dt>c+d||dt{printf("项目代号不存在,重新输入\n");goto alo;}printf("\n\n %3d 学校的%3d 项目成绩为%3d\n",dr,dt,f[dr][dt].num);}void xiangmu(){int ge,sedy=0;printf("\n 请输入您要查询的项目代号:");all:scanf("%d",&ge);printf("\n");if(ge>c+d||ge{printf("没有此项目代号,重新输入\n");goto all;}for(i=1;i{if(f[b][ge].num==2)sedy=1;}if(sedy==0){printf("此项目没有录入成绩\n");return;}for(i=1;i{if(f[i][ge].num==7){printf(" 此项目取前5名获奖者\n");break;}}if(i==a+1)printf(" 此项目取前3名获奖者\n");printf("\n 获胜名单由成绩高到低依次为:\n\n ");for(i=7;i>0;i--){for(b=1;b{if(f[b][ge].num==i)printf("%5d",b);}}}void(*g[])()={input,each,biaohao,zongfen,nanzong,nvzong,xuexiao,xiangmu,exit0};void main(){int choos;printf("\n\n * * * 运动会分数统计 * * *\n\n\n");printf("共有多少个学校参赛:");scanf("%d",&a);while(a20){if(a{printf("\n 参赛学校个数不能是负数或零\n\n");printf("共有多少个学校参赛:");scanf("%d",&a);}if(a>20){printf("\n 参赛学校个数不能大于20\n\n");printf("共有多少个学校参赛:");scanf("%d",&a);}}printf("有几个男子组:");scanf("%d",&c);printf("有几个女子组:");scanf("%d",&d);for(i=0;i{f[i]=(struct node *)malloc(sizeof(struct node)*(c+d+3));for(j=0;jf[i][j].num=0;}choos=choose();while(1){while(choos8)choos=choose();(*g[choos])();printf("\n");choos=choose();}}。

本文到这结束,希望上面文章对大家有所帮助。