求高手解决问题

 

 

#include<iostream>
#include<string>
#include<iomanip>
using namespace std;
int Schoolnum;
int Manpronum;
int Womanpronum;
class womanprogram{
private:
    int programid;
    string programname;
    int programscore;
public:
    int getproid() const;
    string getproname()const;
    int  getprogramscore() const;
    void serpro(int id,string pname,int score);
};
int womanprogram::getproid() const
{
    return programid;
}
string womanprogram::getproname() const
{
    return programname;
}
int womanprogram::getprogramscore() const
{
    return  programscore;
}
void womanprogram::serpro(int id,string pname,int score)
{
    programid=id;
    programname=pname;
    programscore=score;
}
class manprogram{
private:
    int programid;
    string programname;
    int programscore;
public:
    int getproid() const;
    string getproname() const;
    int  getprogramscore() const;
    void serpro(int id,string pname,int score);
};
int manprogram::getproid() const
{
    return programid;
}
string manprogram::getproname() const
{
    return programname;
}
int manprogram::getprogramscore() const
{
    return  programscore;
}
void manprogram::serpro(int id,string pname,int score)
{
    programid=id;
    programname=pname;
    programscore=score;
}
womanprogram pwoman[10];
manprogram pman[10];
int tmanscore()
{  
    int mscore(0);
    for(int i=0;i<Manpronum;i++)
    {
        mscore=mscore+pman[i].getprogramscore();
    }
    return mscore;

}
int twomanscore()
{  
    int wscore(0);
    for(int i=0;i<Womanpronum;i++)
    {
        wscore=wscore+pwoman[i].getprogramscore();
    }
    return wscore;

}
int  tscore()
{
    int ttscore(0);
    ttscore=tmanscore()+twomanscore();
    return ttscore;
}
class school{
private:
    int schoolid;
    string sname;
    int score;
    int manscore;
    int womanscore;
    womanprogram *swomanpro;
    manprogram   *smanpro;
public:
    int getschoolid() const;
    string getscholname() const;
    int getscore();
    int getmanscore() ;
    int getwomanscore() ;
    void showwomanpro();
    void setschool(int id,string name,manprogram mpro[],womanprogram wopro[]);
    //school();
    //void setschool(int id,string name,manprogram pro[]);
    void showmanpro();

};
int school::getschoolid() const
{
    return schoolid;
}
string school::getscholname() const
{
   return sname;
}
int school::getmanscore()
{   
   
    //for(int i=0;i<Manpronum;i++)
//    {
//        manscore=manscore+pman[i].getprogramscore();
//    }
    return manscore=tmanscore();
}
int school::getwomanscore()
{
   
    //for(int i=0;i<Womanpronum;i++)
    //{
    //        womanscore=womanscore+pwoman[i].getprogramscore();
    //}
    return womanscore=twomanscore();
}
int school::getscore()
{
    //int totalscore;
    //totalscore=womanscore+manscore;
    return score=tscore();
}
 void school::setschool(int id,string name,manprogram *mpro,womanprogram *wopro)

    schoolid=id;
    sname=name;
    smanpro=mpro;
    swomanpro=wopro;
}
 //school::school()
 //{
//     schoolid=0;
//     sname="null";
//     manscore=0;
//     womanscore=0;
//     score=0;
 //}
//void school::setschool(int id,string name,manprogram *pro)
//{
//    schoolid=id;
//    sname=name;
//    smanpro=pro;
//}
void school::showmanpro()
{      
       
           cout<<setw(10)<<"男子项目名字"<<setw(10)<<"项目ID"<<setw(10)<<"项目得分"<<endl;
        for(int i=0;i<Manpronum;i++)
        cout<<setw(10)<<pman[i].getproname()<<setw(10)<<pman[i].getproid()<<setw(10)<<pman[i].getprogramscore()<<endl;
}
void school::showwomanpro()
{
    cout<<setw(10)<<"女子项目名称"<<setw(10)<<"项目ID"<<setw(10)<<"项目得分"<<endl;
    for(int i=0;i<Womanpronum;i++)
    cout<<setw(10)<<pwoman[i].getproname()<<setw(10)<<pwoman[i].getproid()<<setw(10)<<pwoman[i].getprogramscore()<<endl;

}
school sch[20];

void queryschoolid()
{
           //int  id;
           //cout<<"输入学校ID:"<<endl;
           //cin>>id;
           //id--;
           sch[0].showmanpro();
           sch[0].showwomanpro();
       
}
void  sortschoolscore()
{
    school tem;
    for(int i=0;i<Schoolnum;i++)
    {
        for(int j=i;j<Schoolnum;j++)
            if(sch[i].getscore()>sch[i].getscore())
            {
                tem=sch[i];
                sch[i]=sch[j];
                sch[j]=tem;
            }
    }
    cout<<setw(10)<<"学校总分"<<setw(10)<<"学校名字"<<setw(10)<<"学校ID"<<setw(10)<<"男子团体总分"<<setw(10)<<"女子团体总分"<<endl;
    for(int k=0;k<Schoolnum;k++)
    {
            cout<<setw(10)<<sch[k].getscore()<<setw(10)<<sch[k].getscholname()<<setw(10)<<sch[k].getschoolid()<<setw(10)<<sch[k].getmanscore()<<setw(10)<<sch[k].getwomanscore()<<endl;
    }
}
void  sortmanproscore()
{
        school temp;
       for(int i=0;i<Schoolnum;i++)
       {
        for(int j=i;j<Schoolnum;j++)
            if(sch[i].getmanscore()>sch[i].getmanscore())
            {
                temp=sch[i];
                sch[i]=sch[j];
                sch[j]=temp;
            }
       }
     cout<<setw(10)<<"男子团体得分"<<setw(10)<<"学校ID"<<setw(10)<<"学校名字"<<setw(10)<<"学校总分"<<setw(10)<<"女子团体得分"<<endl;
    for(int k=0;k<Schoolnum;k++)
    {
       
        cout<<setw(10)<<sch[k].getmanscore()<<setw(10)<<sch[k].getschoolid()<<setw(10)<<sch[k].getscholname()<<setw(10)<<sch[k].getscore()<<setw(10)<<sch[k].getwomanscore()<<endl;
    }

}
void  sortwomanproscore()
{
      school temp;
       for(int i=0;i<Schoolnum;i++)
       {
        for(int j=i;j<Schoolnum;j++)
            if(sch[i].getwomanscore()>sch[i].getwomanscore())
            {
                temp=sch[i];
                sch[i]=sch[j];
                sch[j]=temp;
            }
       }

      cout<<setw(10)<<"女子团体得分"<<setw(10)<<"学校ID"<<setw(10)<<"学校名字"<<setw(10)<<"学校总分"<<setw(10)<<"男子团体得分"<<endl;
      for(int k=0;k<Schoolnum;k++)
      {
          cout<<setw(10)<<sch[k].getwomanscore()<<setw(10)<<sch[k].getschoolid()<<setw(10)<<sch[k].getscholname()<<setw(10)<<sch[k].getscore()<<setw(10)<<sch[k].getmanscore()<<endl;

      }
}
 void  sortschoolid()
{   
    cout<<setw(10)<<"学校ID"<<setw(10)<<"学校名字"<<setw(10)<<"学校总分"<<setw(10)<<"男子团体总分"<<setw(10)<<"女子团体总分"<<endl;
    for(int i=0;i<Schoolnum;i++)
    cout<<setw(10)<<sch[i].getschoolid()<<setw(10)<<sch[i].getscholname()<<setw(10)<<sch[i].getscore()<<setw(10)<<sch[i].getmanscore()<<setw(10)<<sch[i].getwomanscore()<<endl;
   
}
void inputschool()
{
    cout<<"参赛学校数目:";
    cin>>Schoolnum;
    cout<<"参赛男子项目数目:";
    cin>>Manpronum;
    cout<<"参赛女子项目数目:";
    cin>>Womanpronum;
    for(int i=0;i<Schoolnum;i++)
    { 
        int sid;
        sid=i+1;
       string name("");
       cout<<"学校编号"<<sid<<"名字"<<endl;
       cin>>name;
       for(int j=0;j<Manpronum;j++)
       {
        int mid;
        mid=j+1;
        string proname("");
        cout<<"输入男子"<<mid<<"项目名称 ";
        cin>>proname;
        cout<<"输入项目得分:";
        int proscore;
        cin>>proscore;
        pman[j].serpro(mid,proname,proscore);
        //cout<<"&&&&&&&&&&&&&&&&&&&&&"<<endl;
        //for(j=0;j<Manpronum;j++)
        //cout<<pman[j].
       }
         cout<<"&&&&&&&&&&&&&&&&&&&&&"<<endl;
        for(j=0;j<Manpronum;j++)
        cout<<pman[j].getproid()<<pman[j].getproname()<<endl;
       //sch[i].setschool(sid,name,pman);
       //cout<<"男子"<<endl;
       //cout<<sch[i].getschoolid()<<endl;sch[i].showmanpro();
       for(int k=0;k<Womanpronum;k++)
       {
        int wid;
        wid=k+Manpronum+1;
        string proname("");
        cout<<"输入女子"<<wid<<"项目名称:";
        cin>>proname;
        cout<<"输入项目得分:";
        int proscore;
        cin>>proscore;
        pwoman[k].serpro(wid,proname,proscore);
       }
        cout<<"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"<<endl;
        for(k=0;k<Womanpronum;k++)
        cout<<pwoman[k].getproid()<<pwoman[k].getproname()<<endl;
       sch[i].setschool(sid,name,pman,pwoman);
       cout<<"输出"<<endl;
       cout<<sch[i].getschoolid()<<endl;sch[i].showmanpro();sch[i].showwomanpro();
    }
    for(i=0;i<Schoolnum;i++)
    {    
        cout<<"输出*********************************************************"<<endl; 
        cout<<"学校ID"<<sch[i].getschoolid()<<endl;sch[i].showmanpro();sch[i].showwomanpro();
    }

}
void select()
{
    int schioce(1);
    while(schioce!=0)
    {  
        cout<<"0 退出"<<endl;
        cout<<"1 根据ID查询学校项目"<<endl;
        cout<<"2 按学校编号排序输出(1-schoolnum)"<<endl;
        cout<<"3 按学校总分排序输出"<<endl;
        cout<<"4 按学校男子团体总分排序输出"<<endl;
        cout<<"5 按学校女子团体总分排序输出"<<endl;
        cout<<"选择:";
        cin>>schioce;
        switch(schioce)
        {
        case 0:
            break;
        case 1:
             queryschoolid();    break;
        case 2:
            sortschoolid();    break;
        case 3:
            sortschoolscore(); break;
        case 4:
            sortmanproscore();  break;
        case 5:
           sortwomanproscore();    break;
        default:
            cout<<"输入错误,或无相关记录,返回主菜单"<<endl; break;
        }
    }
}


int main()

    int chioce(1);
    while(chioce!=0)
    {
           cout<<"运动会统计系统"<<endl;
           cout<<"0  退出"<<endl;
           cout<<"1 录入信息"<<endl;
           cout<<"2 查询信息"<<endl;
           cout<<"选择:";
           cin>>chioce;
           switch(chioce)
           {
           case 0:
                        break;
           case 1:
               inputschool(); break;
           case 2:
               select();     break;
           default:
                cout<<"输入错误,返回主菜单"<<endl;

           }
    }

    return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值