求急用简单方法求谢谢

 

效果图及代码如下,如有帮助,请采纳一下,谢谢

 

代码:

#include <iostream>
#include <string>
using namespace std;

struct Signer 
{
	string name;     //歌手名称
	float score[7];  //歌手成绩
	float max;       //最高分
	float min;       //最低分
	float sum;       //总分
	float avg;       //歌手的平均分
};

int main()
{
	Signer ss[10];
	Signer tmp;
	int i = 0,j = 0;
	cout << "请输入10名歌手的名字" << endl;
	for ( i = 0; i < 10; i++)
	{
		getline(cin,ss[i].name);
	}
	cout << "请输入每个学员的成绩" << endl;
	for ( i = 0;i < 10; i++)
	{
		ss[i].sum = 0.0;
		cout << ss[i].name << ":" ;
		for(j = 0; j < 7; j++)
		{
			cin >> ss[i].score[j];
			ss[i].sum += ss[i].score[j];
			if (j == 0)
			{
				ss[i].max = ss[i].score[0];
				ss[i].min = ss[i].score[0];
			}else
			{
				if(ss[i].score[j] > ss[i].max)
					ss[i].max = ss[i].score[j];

				if(ss[i].score[j] < ss[i].min)
					ss[i].min = ss[i].score[j];
			}
		}
		ss[i].avg = (ss[i].sum - ss[i].max - ss[i].min) / 5.0;
	}


	for (i = 0; i < 9; i++)
	{
		for (j = 0; j < 9-i; j++)
		{
			if (ss[j].avg < ss[j+1].avg)
			{
				tmp = ss[j];
				ss[j] = ss[j+1];
				ss[j+1] = tmp;
			}
		}
	}

	for (i = 0; i < 10; i++)
	{
		cout << ss[i].name << "  最高分:"  << ss[i].max << "  最低分:"  << ss[i].min << "   平均分:" << ss[i].avg << endl;
	}

	return 0;
}