📄 sportsmeeting.cpp
字号:
#include<stdio.h>
#include<malloc.h>
#include<iostream.h>
#include<string.h>
#define len sizeof(struct school)
#define len1 sizeof(struct statitcs)
struct school
{ int num;
int project_num;
char name[20];
int score;
//int no;
struct school *next;
};
struct school *insert(void)
{ cout<<"********************************\n";
cout<<"特别提示:\n";
cout<<"如果想退出,请在学校编号输入0\n";
cout<<"********************************\n";
struct school *head,*rear,*p;
head=NULL;rear=NULL;
p=(struct school *)malloc(len);
cout<<"请输入学校编号\n";cin>>p->num;
cout<<"请输入项目\n";cin>>p->project_num;
cout<<"请输入姓名\n";cin>>p->name;
cout<<"请输入成绩\n";cin>>p->score;
if(p->num==0)
return NULL;
while(p->num!=0)
{ if(head==NULL)
{ head=p;rear=p;}
else
{ rear->next=p;
rear=p;
}
p=(struct school *)malloc(len);
cout<<"请输入学校编号\n";cin>>p->num;
cout<<"请输入项目\n";cin>>p->project_num;
cout<<"请输入姓名\n";cin>>p->name;
cout<<"请输入成绩\n";cin>>p->score;
}
rear->next=NULL;
return head;
}
struct school *add(struct school *t)
{
struct school *s,*p;
p=(struct school *)malloc(len);
cout<<"请输入学校编号\n";cin>>p->num;
cout<<"请输入项目\n";cin>>p->project_num;
cout<<"请输入姓名\n";cin>>p->name;
cout<<"请输入成绩\n";cin>>p->score;
s=t;
if(s==NULL)
{ p->next=s;
s=p;
return s;}
else
{ while(s->next!=NULL)
{ s=s->next;}
s->next=p;
p->next=NULL;
return t;}
}
void print(struct school *t)
{ struct school *p;
p=t;
cout<<"学校编号\t项目\t姓名\t成绩\n";
while(p!=NULL)
{ cout<<p->num<<"\t\t"<<p->project_num<<"\t"<<p->name<<"\t"<<p->score<<endl;
p=p->next;
}
}
void display(struct school *t,int n)
{ struct school *p;
p=t;
while(p!=NULL)
{ if(p->num==n)
cout<<p->project_num<<"\t"<<p->name<<"\t"<<p->score<<endl;
p=p->next;
}
}
struct school *deletes(struct school *t)
{ struct school *p,*k,*k_head;int flag=0;
p=(struct school *)malloc(len);
cout<<"请输入要删除的信息\n";
cout<<"请输入学校编号\n";cin>>p->num;
cout<<"请输入项目\n";cin>>p->project_num;
cout<<"请输入姓名\n";cin>>p->name;
cout<<"请输入成绩\n";cin>>p->score;
k=t;
while(k!=NULL)
{ if((p->num==k->num)&&(k->project_num==p->project_num)&&!strcmp(p->name,k->name)&&(p->score==k->score))
{ flag=1;
if(k==t)
{ t=t->next;}
else
k_head->next=k->next;
}
else
k_head=k;
k=k->next;
}
if(k==NULL&&flag==0)
cout<<"无法找到你要删除的信息\n";
return t;
}
void find(struct school *t)
{ struct school *p;
p=t;
cout<<"学校编号\t项目\t姓名\t成绩\n";
while(p!=NULL)
{ cout<<p->num<<"\t\t"<<p->project_num<<"\t"<<p->name<<"\t"<<p->score<<endl;
p=p->next;
}
}
void find1(struct school *t)
{ struct school *k;int flag=0;int num;
cout<<"请输入要查找的信息\n";
cout<<"请输入学校编号\n";cin>>num;
cout<<"学校编号\t项目\t姓名\t成绩\n";
k=t;
while(k!=NULL)
{ if(num==k->num)
{ flag=1;cout<<k->num<<"\t\t"<<k->project_num<<"\t"<<k->name<<"\t"<<k->score<<endl;}
k=k->next;
}
if(k==NULL&&flag==0)
cout<<"无法找到你要的信息\n";
}
void find2(struct school *t)
{ struct school *k;int flag=0;int num;
cout<<"请输入要查找的信息\n";
cout<<"请输入项目号\n";cin>>num;
cout<<"学校编号\t项目\t姓名\t成绩\n";
k=t;
while(k!=NULL)
{ if(num==k->project_num)
{ flag=1;cout<<k->num<<"\t\t"<<k->project_num<<"\t"<<k->name<<"\t"<<k->score<<endl;}
k=k->next;
}
if(k==NULL&&flag==0)
cout<<"无法找到你要的信息\n";
}
void find3(struct school *t)
{ struct school *k;int flag=0;char name[20];
cout<<"请输入要查找的信息\n";
cout<<"请输入姓名\n";cin>>name;
cout<<"学校编号\t项目\t姓名\t成绩\n";
k=t;
while(k!=NULL)
{ if(!strcmp(name,k->name))
{ flag=1;cout<<k->num<<"\t\t"<<k->project_num<<"\t"<<k->name<<"\t"<<k->score<<endl;}
k=k->next;
}
if(k==NULL&&flag==0)
cout<<"无法找到你要的信息\n";
}
struct school *deletes1(struct school *t)
{ struct school *k,*k_head;int flag=0;int num;
cout<<"请输入要删除的信息\n";
cout<<"请输入学校编号\n";cin>>num;
k=t;
while(k!=NULL)
{ if(k->num==num)
{ flag=1;
if(k==t)
{ t=t->next;}
else
k_head->next=k->next;
}
else
k_head=k;
k=k->next;
}
if(k==NULL&&flag==0)
cout<<"无法找到你要删除的信息\n";
return t;
}
struct school *deletes2(struct school *t)
{ struct school *k,*k_head;int flag=0;int num;
cout<<"请输入要删除的信息\n";
cout<<"请输入项目号\n";cin>>num;
k=t;
while(k!=NULL)
{ if(k->project_num==num)
{ flag=1;
if(k==t)
{ t=t->next;}
else
k_head->next=k->next;
}
else
k_head=k;
k=k->next;
}
if(k==NULL&&flag==0)
cout<<"无法找到你要删除的信息\n";
return t;
}
struct school *deletes3(struct school *t)
{ struct school *k,*k_head;int flag=0;char name[20];
cout<<"请输入要删除的信息\n";
cout<<"请输入姓名\n";cin>>name;
k=t;
while(k!=NULL)
{ if(!strcmp(k->name,name))
{ flag=1;
if(k==t)
{ t=t->next;}
else
k_head->next=k->next;
}
else
k_head=k;
k=k->next;
}
if(k==NULL&&flag==0)
cout<<"无法找到你要删除的信息\n";
return t;
}
struct statitcs
{
int flag;
int total;
int no;
struct statitcs *next;
};
int total1(struct school *t,int n)
{ struct school *p;
p=t;
int sum=0;
while(p!=NULL)
{ if(p->num==n)
sum+=p->score;
p=p->next;
}
return sum;
}
void swap(struct statitcs *t1,struct statitcs *t2)
{ struct statitcs *t;
t=(struct statitcs *)malloc(len1);
t->flag=t1->flag;t1->flag=t2->flag;t2->flag=t->flag;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -