求大神帮忙做下C语言大作业 跪求!!!!!

2025-02-27 23:19:57
推荐回答(1个)
回答1:

只有20分,我给你写个框架,其他函数实现给你思路。

可以不?

//选手 结构体
struct singer
{
int members_ID;              /*参赛编号*/
string   name;                  /*姓名*/
int  scores[10];   /*十个裁判打出的分数*/
int        ave;                /*平均分*/
int       rank;                  /*排名*/
};

singer people[10];               /*十个选手*/


//从键盘输入每个选手的相关信息:参赛编号,姓名和十个得分
void InputSingerInfo()
{
cout<<"请依次输入每个选手的相关信息:参赛编号,姓名和十个得分"< for (int i=0; i<10; i++)
{
cin>>people[i].members_ID;
cin>>people[i].name;
for(int j=0; j<10; j++)
cin>>people[i].scores[j];
}
cout<<"输入完成"<}


//计算每位选手的最后得分,并按分数由高到低排序
void CalcFinalScoreAndSort()
{
//1、对全局变量people中的每一个选手singer的分数scores排序(书上应该有冒泡吧)
//2、排序后对下标1到8的scores计算平均
//3、上面1、2步骤为循环,如此,计算出所有选手平均分放入singer的ave
//4、对平均分排序
//5、结束
};


//查询功能:输入参赛选手的编号或姓名,便可输出该选手的得分以及排名
void QueryInfo(const singer& info )
{
/*根据条件查找,不用说了吧*/
}


//采用菜单操作方式,即从键盘输入1到3这三个数,分别完成以上(2)到(4)的功能。
//在主函数中加入:
void main()
{
cout<<"-----------------歌唱比赛小系统-----------------"< cout<<"1、从键盘输入每个选手的相关信息:参赛编号,姓名和十个得分"< cout<<"2、计算每位选手的最后得分,并按分数由高到低排序"< cout<<"3、查询功能:输入参赛选手的编号或姓名,便可输出该选手的得分以及排名"< cout<<"请输入操作功能:(1、2、3.流被破坏结束)"< char in;
while(cin>>in)
{
if ()//判断是1、2、3,才执行
{
//判断执行顺序
}

}
else
cout<<"结束之类的提示"<}