西南科技大学C++程序设计实验十一(泛型程序设计与C++标准模板库)
一、实验目的
1. 掌握泛型程序设计概念;
2. 掌握vector、deque、list容器使用方法;
3.了解set、map容器使用方法。
二、实验任务
1.分析完善以下程序,理解vector容器使用方法:
#include <iostream>
__#include <vector>_______ //补充vector模板头文件
using namespace std;
void main()
{
vector<int> a(10,1); //初始化容器,开辟10个单位空间·元素初始化为1
int i;
cout << "初始化变量" << endl;
for (int i=0;i<a.size();i++) //容器长度a.size()
{
__ a[i] = (i + 1) * 2; ______//给容器a中元素重新赋值
}
____cout << "最大值为:" << max_val << endl;________//输出 a数组中最大值
}
完善后的代码:
#include <iostream>
#include <vector>
#include <algorithm> //需要添加algorithm头文件
using namespace std;
int main() //main函数需要返回int类型
{
vector<int> a(10, 1); //初始化容器,开辟10个单位空间·元素初始化为1
int i;
int max_val = 0; //需要初始化最大值为0
for (int i = 0;i < a.size();i++) //容器长度a.size()
{
a[i] = (i + 1) * 2; //给容器a中元素重新赋值
max_val = max(max_val, a[i]); //更新最大值
}
cout << "最大值为:" << max_val << endl; //输出 a数组中最大值
return 0; //返回0表示程序正常结束
}
实验思考题回答与结果分析:
- 程序运行结果:
(2) 该程序主要运用.........知识点?编程时需要注意什么?(不要抄袭!)
该程序主要运用了vector容器的基本使用方法,包括创建容器、初始化容器、访问容器元素、修改容器元素、获取容器大小等。编程时需要注意正确使用vector容器相关的成员函数和语法,例如使用[]操作符来访问容器元素、使用size()函数获取容器大小等。此外,在进行数据访问时,还需要注意对容器越界的情况进行处理,以避免程序崩溃或出现不可预期的错误。.......
- 理解vector容器基本用法,用迭代器依次访问容器中每个元素,下题要求:(1)查询某一元素在容器中出现的次数;(2)找出容器中最大值。
参考代码:
#include <iostream>
#include<vector> //头文件
#include<algorithm> //算法头文件
using namespace std;
void main()
{
vector<int> v1; //定义容器
v1.push_back(1); //把数据压入vector容器
v1.push_back(3);
v1.push_back(5);
v1.push_back(5);
for (vector<int>::iterator it = v1.begin(); it != v1.end(); it++)//使用迭代器遍历
{ cout << *it << endl; }
int num = count(v1.begin(),v1.end(),5); //计算5出现的次数
cout << "5出现了" <<num<<"次"<< endl;
_ int max_val = *max_element(v1.begin(), v1.end());
cout << "最大值为:" << max_val << endl;________________________________//补充代码,找出最大值
}
实验思考题回答与结果分析:
- 程序运行结果:
- 该程序主要运用.........知识点?编程时需要注意什么?(不要抄袭!)
该程序主要运用了vector容器的基本使用方法,包括创建容器、向容器中添加元素、使用迭代器遍历容器、使用count函数统计指定元素在容器中的出现次数、使用max_element函数找出容器中的最大值等。编程时需要注意正确使用vector容器相关的成员函数和语法,例如使用push_back函数添加元素、使用begin和end
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!