【C++】程序题( STL标准模板库)

🎃个人专栏:

🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客

🐳Java基础:Java基础_IT闫的博客-CSDN博客

🐋c语言:c语言_IT闫的博客-CSDN博客

🐟MySQL:数据结构_IT闫的博客-CSDN博客

🐠数据结构:​​​​​​数据结构_IT闫的博客-CSDN博客

💎C++:C++_IT闫的博客-CSDN博客

🥽C51单片机:C51单片机(STC89C516)_IT闫的博客-CSDN博客

💻基于HTML5的网页设计及应用:基于HTML5的网页设计及应用_IT闫的博客-CSDN博客​​​​​​

🥏python:python_IT闫的博客-CSDN博客

🐠离散数学:离散数学_IT闫的博客-CSDN博客

欢迎收看,希望对大家有用!

目录

🎯程序一:

🎯程序二:

🎯程序三:

🎯程序四:

🎯程序五:

🎯答案一:

🎯答案二:

🎯答案三:

🎯答案四:

🎯答案五:


🎯程序一:

定义包含5个元素的整型数组,从键盘输入数据对数组进行赋值;使用sort排序函数对数据按从大到小的顺序排序并输出排序后的数组。

#include <bits/stdc++.h> 万能头文件

#include <algorithm>

sort(a,a+5,greater<int>()); //降序

sort(a,a+5,less<int>()); //升序

🎯程序二:

创建整型数据的vector可变长数组,向vector尾部插入数据98,34,56,78,23;使用迭代器输出vector,插入值58到第3个位置,删除最后一个元素后输出vector;使用sort函数对数组进行从小到大排序并输出;使用reverse方法将元素翻转并输出。

元素翻转函数:reverse(v.begin(),v.end());

注意:每行数据输出后有一个半角空格。

🎯程序三:

创建整型数据的List实现双向链表,向链表头部依次插入数据34,56,78;向链表尾部依次插入数据23,98,99;使用迭代器输出链表,输出链表的最大值,删除数值98;使用sort函数对数组进行从小到大排序并输出。

List排序函数:list.sort();

注意:第一、三行数据输出后有一个半角空格。

🎯程序四:

创建整型数据set集合,向set依次插入数据23,56,18,23,79,56;使用迭代器输出set集合的数据并观察结果;查找集合中是否存在值56和99;删除集合第一个元素并插入数值88后输出数据。

注意:集合数据输出后有一个半角空格。

🎯程序五:

使用map容器对数字10~15映射英文单词A~F,并在控制台输出。

🎯答案一:

cpp 复制代码
#include <bits/stdc++.h>

using namespace std;

int main(){

int a[5],i;

for(i=0;i<5;i++)

  cin>>a[i];

sort(a,a+5,greater<int>());

for(i=0;i<5;i++)

  cout<<a[i]<<" ";

cout<<endl;

return 0;

}

🎯答案二:

cpp 复制代码
#include <bits/stdc++.h>

using namespace std;

int main() {

	vector<int> v;

	vector<int>::iterator pos;

	v.push_back(98);

	v.push_back(34);

	v.push_back(56);

	v.push_back(78);

	v.push_back(23);

	for(pos=v.begin(); pos!=v.end(); ++pos)

		cout<<*pos<<" ";

	cout<<endl;

	v.insert(v.begin()+2,58);

	v.erase(v.end()-1);

	for(pos=v.begin(); pos!=v.end(); ++pos)

		cout<<*pos<<" ";

	cout<<endl;

	sort(v.begin(),v.end());

	for(pos=v.begin(); pos!=v.end(); ++pos)

		cout<<*pos<<" ";

	cout<<endl;

	reverse(v.begin(),v.end());

	for(pos=v.begin(); pos!=v.end(); ++pos)

		cout<<*pos<<" ";

	cout<<endl;

	return 0;

}

🎯答案三:

cpp 复制代码
#include <bits/stdc++.h>

using namespace std;

int main() {

list<int> lt;

list<int>::iterator it;

lt.push_front(34);

lt.push_front(56);

lt.push_front(78);

lt.push_back(23);

lt.push_back(98);

lt.push_back(99);

int max=*(lt.begin());

for(it=lt.begin(); it!=lt.end(); it++) {

if(max<*it)

max=*it;

cout<<*it<<" ";

}

cout<<endl;

cout<<"max="<<max<<endl;

lt.remove(98);

lt.sort();

for(it=lt.begin(); it!=lt.end(); it++)

cout<<*it<<" ";

cout<<endl;

return 0;

}

🎯答案四:

cpp 复制代码
#include <bits/stdc++.h>

using namespace std;

int main() {

	set<int> s;

	set<int>::iterator pos;

	s.insert(23);

	s.insert(56);

	s.insert(18);

	s.insert(23);

	s.insert(79);

	s.insert(56);

	for(pos=s.begin();pos!=s.end();pos++)

	   cout<<*pos<<" ";

	cout<<endl;

    cout<<"是否存在56:"<<s.count(56)<<endl;

    cout<<"是否存在99:"<<s.count(99)<<endl;

    s.erase(s.begin());

    s.insert(88);

    for(pos=s.begin();pos!=s.end();pos++)

	   cout<<*pos<<" ";

	cout<<endl;

	return 0;

}

🎯答案五:

cpp 复制代码
#include <bits/stdc++.h>

using namespace std;

int main() {

	map<int,char> m;

	for(int i=10;i<=15;i++)

	   m[i]=65+i-10;

	for(int i=10;i<=15;i++)

	   cout<<i<<"->"<<m[i]<<endl;

	return 0;

}
相关推荐
zwjapple2 分钟前
typescript里面正则的使用
开发语言·javascript·正则表达式
小五Five4 分钟前
TypeScript项目中Axios的封装
开发语言·前端·javascript
前端每日三省5 分钟前
面试题-TS(八):什么是装饰器(decorators)?如何在 TypeScript 中使用它们?
开发语言·前端·javascript
凡人的AI工具箱18 分钟前
15分钟学 Go 第 60 天 :综合项目展示 - 构建微服务电商平台(完整示例25000字)
开发语言·后端·微服务·架构·golang
做人不要太理性22 分钟前
【C++】深入哈希表核心:从改造到封装,解锁 unordered_set 与 unordered_map 的终极奥义!
c++·哈希算法·散列表·unordered_map·unordered_set
程序员-King.30 分钟前
2、桥接模式
c++·桥接模式
chnming198734 分钟前
STL关联式容器之map
开发语言·c++
进击的六角龙36 分钟前
深入浅出:使用Python调用API实现智能天气预报
开发语言·python
檀越剑指大厂36 分钟前
【Python系列】浅析 Python 中的字典更新与应用场景
开发语言·python
湫ccc44 分钟前
Python简介以及解释器安装(保姆级教学)
开发语言·python