⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sportsmeeting.cpp

📁 运动会分数统计系统 运动会分数统计系统
💻 CPP
📖 第 1 页 / 共 2 页
字号:
#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 + -