#include<iostream>
using namespace std;
#include <vector>
#include <deque>
#include <string>
#include <algorithm>
#include <time.h>
class Person
{
public:
Person(string name,float score)
{
this->Score = score;
this->Name = name;
}
string Name;
float Score;
};
void CreatePerson(vector<Person> &vec)
{
string strname = "ABCDE";
for(int i=0;i<5;i++)
{
string name = "选手_";
name += strname[i];
float score = 0;
Person p(name,score);
vec.push_back(p);
}
}
void allocateScore(vector<Person> &vec)
{
deque<float> deq;
srand((unsigned)time(NULL));
//deq.push_back(Avg_Score);
for(vector<Person>::iterator iter = vec.begin();iter!= vec.end(); iter++)
{
float sum = 0;
for(int i = 0; i < 10;i++ )
{
//cout << rand() << '\t';
float score = (rand()%60)+40;
deq.push_back(score);
}
sort(deq.begin(), deq.end());
for(deque<float>::iterator it = deq.begin();it!=deq.end();it++)
{
cout << "*it_score===="<<*it << endl;
}
cout << "----------------------"<< endl;
deq.pop_back();
deq.pop_front();
for(deque<float>::iterator it = deq.begin();it!=deq.end();it++)
{
sum+= *it;
}
float Avg_Score = sum/deq.size();
(*iter).Score = Avg_Score;
deq.clear();
}
}
void printPerson(vector<Person> &vec)
{
for(vector<Person>::iterator iter = vec.begin();iter!= vec.end(); iter++)
{
cout<<"name: "<<(*iter).Name<<" "<<"score :"<<(*iter).Score<<endl;
}
}
int main()
{
vector<Person> vec;
CreatePerson(vec);
allocateScore(vec);
printPerson(vec);
string teststr= "lqq";
cout<<"teststr: "<<teststr<<endl;
}
有5名选手ABCDE,10个评委分别对每一位选手打分,去除最高分和最低分,取平均分。
最新推荐文章于 2023-05-24 00:13:51 发布