/ 说明 ///
/// 共有N个学校参加运动会,编号为1~N。 ///
/// 共有W个项目,编号为1~W
///
///
在某个项目结束后可以进行该项目的数据输入
///
///
可以显示指定项目的所有获奖信息
///
///
指定编号的学校的获奖信息
///
///
可以对所有学校的总成绩进行统计和排名显示
///
/// 每个项目去前三名的运动员获得极分
///
#include "iostream.h"
#include "stdlib.h"
#include "stdlib.h"
#define OK 1
#define ERROR 2
#define SN 8 //参加比赛的学校数
typedef int Status;
int NodeNum=0; //全局变量,当前节点个数
typedef struct
{
char StudentsName[20];
int SchoolName;
int Rank;
}Event;
typedef struct xiangmu
{
int EventNum;
Event StudentScore[3];
struct
xiangmu *NextEvent;
}xiangmu,*EventNode;
EventNode LastEvent;
//输入数据,建立链表/
Status Input(EventNode &head)
{
cout<<"***************项目成绩输入*****************"<<endl;
int i;
EventNode NewEvent;
NewEvent=(EventNode)malloc(sizeof(xiangmu));
if(!NewEvent) return ERROR;
cout<<"请输入该项目的编号:";
cin>>NewEvent->EventNum;
cout<<endl<<endl;
for(i=0;i<3;i++)
{
cout<<"请输入第"<<i+1<<"名姓名:";
cin>>NewEvent->StudentScore[i].StudentsName;
cout<<"请输入运动员学校编号:";
cin>>NewEvent->StudentScore[i].SchoolName;
cout<<"请输入运动员分数:";
cin>>NewEvent->StudentScore[i].Rank;
cout<<endl;
}
if(head==NULL)
head=NewEvent; //头节点为空,新节点做表头
else