c++ STL库deque和vector的例子
头文件wuyong.h:
#pragma once
#include<iostream>
#include<vector>
#include<deque>
#include<algorithm>
#include<string>
using namespace std;
class Player
{
public:
Player(){}
Player(string name, int score) :mName(name), mScore(score){}
~Player(){} public:
string mName;
int mScore;
}; void Creat_Player(vector<Player>& v)
{
string nameSeed ="ABCDE";
for (int i = ; i < ; i++)
{
Player p;
p.mName = "选手";
p.mName += nameSeed[i];
p.mScore = ;
v.push_back(p); }
}
void printscore(int val)
{
cout << val << " ";
}
void Set_score(vector<Player>& v)
{
for (vector<Player>::iterator it = v.begin(); it != v.end(); it++)
{
//对当前学生进行打分
deque<int> dScore;
for (int i = ; i < ; i++)
{
int score = rand() % + ;
dScore.push_back(score);
}
sort(dScore.begin(), dScore.end());
//for_each(dScore.begin(), dScore.end(),printscore);
//cout << endl;
//去除最高分和最低分
dScore.pop_front();
dScore.pop_back();
int totlescore = ;
for (deque<int>::iterator dit = dScore.begin(); dit != dScore.end(); dit++)
{
totlescore += (*dit);
int aveScore = totlescore / dScore.size();
//保存分数
(*it).mScore = aveScore;
}
}
}
bool mycompare(Player& p1,Player& p2)
{
return p1.mScore > p2.mScore;
}
//分数排名 sort默认从小到大,希望从大到小
void Print_Rank(vector<Player>& v)
{
sort(v.begin(), v.end(), mycompare);
for (vector<Player>::iterator it = v.begin(); it != v.end(); it++)
{
cout << "姓名:" << (*it).mName << " 得分: " << (*it).mScore << endl;
}
}
源文件wuyong.cpp:
#include"wuyong.h"
int main()
{
vector<Player> vPlist;
Creat_Player(vPlist);
Set_score(vPlist);
Print_Rank(vPlist); system("pause");
return ;
}
c++ STL库deque和vector的例子的更多相关文章
- [转] C++的STL库,vector sort排序时间复杂度 及常见容器比较
http://www.169it.com/article/3215620760.html http://www.cnblogs.com/sharpfeng/archive/2012/09/18/269 ...
- 使用STL库sort函数对vector进行排序
使用STL库sort函数对vector进行排序,vector的内容为对象的指针,而不是对象. 代码如下 #include <stdio.h> #include <vector> ...
- 标准模板库(STL)学习探究之vector容器
标准模板库(STL)学习探究之vector容器 C++ Vectors vector是C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库.vector之所以被 ...
- STL库list::sort()实现深度解析
原创,转载请注明出处:STL库list::sort()实现深度解析 list模板的定义以及一些基本成员函数的实现这里我就不赘述了,还不清楚的同学可以到网上查找相关资料或者直接查看侯捷翻译的<ST ...
- UVa 11991:Easy Problem from Rujia Liu?(STL练习,map+vector)
Easy Problem from Rujia Liu? Though Rujia Liu usually sets hard problems for contests (for example, ...
- 【实习记】2014-08-15文档太少看着源码用cgicc+stl库之模板谓词函数对象
总结1: 今天找到了昨天scanf的问题答案,scanf与printf一样的神奇而复杂,稍不留神,就会被坑.scanf函数在读入非空白符分割的多个字符串的解决方法是这个:/* 以 | 分割 * ...
- 带你深入理解STL之Deque容器
在介绍STL的deque的容器之前,我们先来总结一下vector和list的优缺点.vector在内存中是分配一段连续的内存空间进行存储,其迭代器采用原生指针即可,因此其支持随机访问和存储,支持下标操 ...
- STL库学习笔记(待补充QAQ
几百年前就说要学STL了然后现在还没动呢QAQ总算还是克服了懒癌决定学下QAQ 首先港下有哪几个vector listset map stack queue,大概就这些? 然后因为有几个基本操作每个都 ...
- 模拟实现STL库
最近在复习STL,感觉再看的时候比刚开始学的时候通透很多.以前模拟实现了一个STL库,最近复习完又重构了一遍.代码放出来以供后面学习.如果有写的不好的地方欢迎大家批评指正. STL_List.h #p ...
随机推荐
- Kubectl工具常用命令
创建namesapce kubectl create namespace {name} 注意:name只能为小写字母.数字和-的组合,且开头结尾为字母,一般格式为my-name 123-abc等. 创 ...
- Martin Fowler’s Active Record design pattern.
P of EAA: Active Record https://www.martinfowler.com/eaaCatalog/activeRecord.html Active Record An o ...
- xenserver 模板导出导入
由于业务需求,新增一台xenserver,需要将原先创建好的模板环境导入到新的母机上面,此处记录一下 1.导出模板 # 获取需要导出的模板uuid [root@localhost ~]# xe tem ...
- 洛谷 P2721 小Q的赚钱计划
洛谷 这大概是我见过最水的紫题吧- 洛谷标签赞一个! 题意:你有一年时间,把10w元存银行变成更多钱,在特定时间区间内,你会有一些利息,不过不可中途退出. 直接dp:st[i]表示区间左端点,ed[i ...
- centos系统时间相差8个小时解决方案
查看当前系统时间 [root@centos64 ~]# date 查看硬件时间 [root@centos64 ~]# hwclock --show 同步时间可以用:ntpdate us.pool.nt ...
- centos6.9下安装composer
1.下载composer curl -sS https://getcomposer.org/installer | php ps:如果出现php无法运行的情况,请先把PHP加入环境变量 2.移动或复制 ...
- HDU1950-Bridging signals-最长上升子序列
Description 'Oh no, they've done it again', cries the chief designer at the Waferland chip factory. ...
- C# emoji 表情如何插入mssql
如何将emoji表情存入mssql 呢? 在Windows显示emoji(win7需要安装补丁) 在MAC完美支持 步骤就是将显示不出来的emoji UrlEncode=>进入MSsql 然后拿 ...
- Python之匿名函数(Day18)
匿名函数 为了解决那些功能很简单的的需求而设计的一句话函数 #这段代码 def calc(n): return n**n print(calc(10)) #换成匿名函数 calc = lambda n ...
- iOS 快速遍历 效率分析 for loop for in enumerateBlock 适用条件
test1 简单遍历 结论: 当数组数据量很小 时候 for loop 和 for in 效率不相上下,随着数据量增长for in 快速枚举的优势 明显 如果需要知道 索引可用 enumrateBlo ...