【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;

}
相关推荐
高山我梦口香糖30 分钟前
[react]searchParams转普通对象
开发语言·前端·javascript
冷眼看人间恩怨43 分钟前
【Qt笔记】QDockWidget控件详解
c++·笔记·qt·qdockwidget
信号处理学渣1 小时前
matlab画图,选择性显示legend标签
开发语言·matlab
红龙创客1 小时前
某狐畅游24校招-C++开发岗笔试(单选题)
开发语言·c++
Lenyiin1 小时前
第146场双周赛:统计符合条件长度为3的子数组数目、统计异或值为给定值的路径数目、判断网格图能否被切割成块、唯一中间众数子序列 Ⅰ
c++·算法·leetcode·周赛·lenyiin
jasmine s1 小时前
Pandas
开发语言·python
biomooc1 小时前
R 语言 | 绘图的文字格式(绘制上标、下标、斜体、文字标注等)
开发语言·r语言
骇客野人1 小时前
【JAVA】JAVA接口公共返回体ResponseData封装
java·开发语言
black^sugar1 小时前
纯前端实现更新检测
开发语言·前端·javascript
404NooFound2 小时前
Python轻量级NoSQL数据库TinyDB
开发语言·python·nosql