STL写评委打分

#include<iostream>
#include<deque>
#include<vector>
#include<string>
#include<ctime>
using namespace std;

class Person
{
public:
	Person(string name, int score)
	{
		this->m_Name = name;
		this->m_score = score;
	}
	string m_Name;
	int m_score;
};

void createPerson(vector<Person> &v)
{
	string nameSelect="ABCDE";
	for(int i=0; i<5 ;++i)
	{
		string name = "选手";
		name +=nameSelect[i];

		Person p(name,0);
		v.push_back(p);
	}
}


void setScore(vector<Person> &v)
{
	for(vector<Person>::iterator it=v.begin();it!= v.end();++it)
	{
		deque<int> d;
		for(int i=0;i<10;++i)
		{
			int score = rand()%41+60 ; //60~100
			d.push_back(score);
		}

		////检测数据是否写入
		//for(deque<int>:: iterator dit=d.begin();dit!=d.end();++dit)
		//{
		//	cout<<*dit<<" ";
		//}
		//cout<<endl;
		int sum=0;
		for(deque<int>:: iterator dit=d.begin();dit!=d.end();++dit)
		{
			sum +=*dit;
		}
		int avg =sum/(d.size());
		it->m_score=avg;
	}
}
void showScore(vector<Person> &v)
{
	for(vector<Person>::iterator it = v.begin();it!=v.end();++it)
	{
		cout<< it->m_Name<<"    score:  "<<it->m_score<<endl;
	}
}
int main()
{
	srand((unsigned int)time(NULL));
	vector<Person> v;
	
	//创建选手
	createPerson(v);

	////检测选手是否创建
	//for(vector<Person>::iterator it = v.begin();it!=v.end();++it)
	//{
	//	cout<< it->m_Name<<endl;
	//}

	//评委打分
	setScore(v);

	showScore(v);


	return 0;
}
发布了38 篇原创文章 · 获赞 13 · 访问量 4310

猜你喜欢

转载自blog.csdn.net/YanWenCheng_/article/details/104062998
今日推荐