/*5school1school2school3school4school52 3跳远1 2 3 4 5长跑5 4 2 1 3跳高1 3 2 4 5100m2 1 3 5 4铅球3 2 1 4 5*/#include#include#includeusing namespace std;int n; //n个学校int m; //m个男子项目int w; //w个女子项目struct pro //表示项目的结构体{string name; //项目名称int snum[6]; //前5名学校的编号}p[21];struct school //表示学校的结构体{int num;string name; //学校名称int score; //学校总分int male; //男子总分int female; //女子总分}sch[21];int a[101][101];int integral[5]={7,5,3,2,1};void input(){int i,j,y,x;printf("输入学校数目:");y=0;while(1){scanf("%d",&n);if(n>=1&&n<=20)y=1;if(y)break;else printf("输入数据有误,请重新输入:");}for(i=1;i<=n;i++){printf("输入第%d个学校的名称:",i);cin>>sch[i].name;sch[i].score=0;sch[i].female=0;sch[i].male=0;sch[i].num=i;}printf("输入男子项目数和女子项目数:");y=0;while(1){scanf("%d%d",&m,&w);if(m<=20&&m>=1&&w<=20&&w>=1)y=1;if(y)break;else printf("输入数据有误,请重新输入:");}for(i=1;i<=m+w;i++){printf("输入第%d个项目的名称:\n",i);cin>>p[i].name;printf("输入第%d个项目的前5名的学校编号:\n",i);for(j=1;j<=5;j++){y=0;while(1){scanf("%d",&x);if(x>=1&&x<=20)y=1;if(y)break;else printf("输入数据有误,请重新输入:");}p[i].snum[j]=x;sch[x].score+=integral[j-1];if(i<=m)sch[x].male+=integral[j-1];else sch[x].female+=integral[j-1];}}}void print(int i){cout<sch[j].num){t=sch[i];sch[i]=sch[j];sch[j]=t;}}printf("\n按编号排列:\n");printf("编号 学校名称 总分 男子总分 女子总分\n");for(i=1;i<=n;i++)print(i);}void zongfen() //按学校总分排序{int i,j;school t;for(i=1;i=1&&s<=n)y=1;if(y)break;else printf("输入数据有误,请重新输入:");}printf("该学校相关信息:\n");printf("编号 学校名称 总分 男子总分 女子总分\n");for(i=1;i<=n;i++){if(sch[i].num==s){print(i);break;}}cout<=1&&s<=n)y=1;if(y)break;else printf("输入数据有误,请重新输入:");}cout<
