建设局网站打不开,菏泽网站建设优惠臻动传媒,groupon wordpress theme,成都网站软件定制开发一、案例说明
有5名选手:选手ABCDE#xff0c;10个评委分别对每一名选手打分#xff0c;去除最高分#xff0c;去除评委中最低分#xff0c;取平均分。
二、案例实现
在实现这个系统时#xff0c;我们规划一下实现的步骤以及细节#xff1a; 1、创建一个选手类#x…一、案例说明
有5名选手:选手ABCDE10个评委分别对每一名选手打分去除最高分去除评委中最低分取平均分。
二、案例实现
在实现这个系统时我们规划一下实现的步骤以及细节 1、创建一个选手类 2、创建一个存放选手的容器 3、创建一个存放每个选手分数的容器 4、实用sort排序后计算平均分
一、创建一个选手类
class people
{
public:people(string name, int score){this-M_name name;this-M_sorce score;}//选手名称string M_name;//选手分数int M_sorce;
};在这里选手类包含两个信息一个是选手的姓名一个是选手的分数
二、创建一个选手的vector容器
void CreatPeople(vectorpeople v)
{string nameSeed ABCDE;for (int i 0; i 5; i){string name 选手;name nameSeed[i];int scorce 0;people p(name, scorce);v.push_back(p);}
}在这里我们依次将选手的姓名以及初始的分数放入容器中。
三、创建一个deque容器存放分数
void setScore(vectorpeople v)
{for (vectorpeople::iterator it v.begin(); it ! v.end(); it){//准备打分容器dequeint d;for (int i 0; i 10; i){//随机分int score rand() % 41 60;d.push_back(score);}四、使用sort进行排序计算平均分 //对容器进行排序sort(d.begin(), d.end());//去除最高分最低分d.pop_back();d.pop_front();//取平均int sum 0;for (dequeint::iterator it d.begin(); it ! d.end(); it){sum *it;}int avg_score sum / d.size();//赋值给选手(*it).M_sorce avg_score;三、整体的计算代码
#includeiostream
using namespace std;
#includevector
#includedeque
#includestring
#includealgorithm
#includectimeclass people
{
public:people(string name, int score){this-M_name name;this-M_sorce score;}//选手名称string M_name;//选手分数int M_sorce;
};void CreatPeople(vectorpeople v)
{string nameSeed ABCDE;for (int i 0; i 5; i){string name 选手;name nameSeed[i];int scorce 0;people p(name, scorce);v.push_back(p);}
}void setScore(vectorpeople v)
{ for (vectorpeople::iterator it v.begin(); it ! v.end(); it){//准备打分容器dequeint d;for (int i 0; i 10; i){//随机分int score rand() % 41 60;d.push_back(score);}//对容器进行排序sort(d.begin(), d.end());//去除最高分最低分d.pop_back();d.pop_front();//取平均int sum 0;for (dequeint::iterator it d.begin(); it ! d.end(); it){sum *it;}int avg_score sum / d.size();//赋值给选手(*it).M_sorce avg_score;}
}void ShowScore(vectorpeople v)
{for (vectorpeople::iterator it v.begin(); it ! v.end(); it){cout (*it).M_name : endl;cout (*it).M_sorce endl;}
}int main() {//加载随机数种子srand((unsigned int)time(NULL));//创建存放选手的vector容器vectorpeople v;CreatPeople(v);//对选手打分setScore(v);//显示分数ShowScore(v);system(pause);return 0;}