首页
登录
从业资格
阅读以下说明和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【
阅读以下说明和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【
题库
2022-08-02
61
问题
阅读以下说明和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。【说明】 C++标准模板库中提供了map模板类,该模板类可以表示多个“键-值”对的集合,其中键的作用与普通数组中的索引相当,而值用作待存储和检索的数据。此外,C++模板库还提供了pair模板类,该类可以表示一个“键-值”对。pair对象包含两个属性:first和second,其中first表示“键-值”中的“键” ,而second表示“键-值”中的“值”。 map 类提供了 insert 方法和 find 方法,用于插入和查找信息。应用时,将一个 pair对象插入(insert)到 map 对象后,根据“键”在 map 对象中进行查找(find),即可获得一个指向pair对象的迭代器。下面的 C++代码中使用了 map和 pair 模板类,将编号为 1001、1002、1003 的员工信息插入到map对象中,然后输入一个指定的员工编号,通过员工编号来获取员工的基本信息。员工编号为整型编码,员工的基本信息定义为类employee。map对象与员工对象之间的关系及存储结构如图5-1所示。
【C++代码】 #include <iostream>#include <map>#include <string>using namespace std ;class employee{ (1) : employee(string name,string phoneNumber, string address){ this->name = name; this->phoneNumber = phoneNumber; this->address = address; } string name; string phoneNumber; string address;};int main( ) { map <int, employee*> employeeMap; typedef pair <int, employee*> employeePair; for (int employIndex = 1001; employIndex <= 1003; employIndex++){ char temp[10] ; //临时存储空间 _itoa(employIndex,temp,10); //将employIndex转化为字符串存储在temp中 string tmp( (2) ); //通过temp构造string对象 employeeMap. (3) ( employeePair ( employIndex, new employee("employee-" + tmp, "85523927-"+tmp, "address-"+tmp) ) ); //将员工编号和员工信息插入到employeeMap对象中 } int employeeNo = 0; cout << "请输入员工编号:"; (4) >> employeeNo; //从标准输入获得员工编号 map<int,employee*>::const_iterator it; it = (5) .find(employeeNo); //根据员工编号查找员工信息 if (it == employeeMap.end()) { cout << "该员工编号不存在 !" << endl; return -1; } cout << "你所查询的员工编号为:" << it->first << endl; cout << "该员工姓名:" << it->second->name << endl; cout << "该员工电话:" << it->second->phoneNumber << endl; cout << "该员工地址:" << it->second->address << endl; return 0;}
选项
答案
解析
(1)public (2)temp (3) insert (4) cin (5) employeeMap
本题主要考查C++程序设计语言中类库的使用。题干中已经给出了Map类和Pair类的使用方式,Map类主要用于存储一组员工的信息,而Pair类则主要用于建立员工号和员工信息的对应关系,员工信息主要使用类employee的对象来存储。C++语言的类生成对象时,需要调用类的构造方法,因此,employee的构造方法应该为公有构造方法,空缺(1)处的答案应该为public;空缺(2)处的代码主要是根据字符数组temp[10]来构造一个string对象,参数应为temp;空缺(3)处的代码是构造员工对象,并将员工对象和员工编号放入一个Pair对象中,再将Pair对象插入到employeeMap中,根据题干说明,Map类中insert方法完成插入对象的功能,因此,空缺(3)处应该填入insert;空缺(4)处的自的是从标准输入中获得员工编号,标准类库中已经定义了标准输入为cin;空缺(5)处是根据用户输入的员工编号,查取员工信息,Map类中的find方法可完成该功能,而当前员工的编号和员工信息都存储在Map类的实例employeeMap中。
转载请注明原文地址:https://www.tihaiku.com/congyezige/2427891.html
本试题收录于:
初级程序员题库软件水平考试初中高级分类
初级程序员
软件水平考试初中高级
相关试题推荐
根据《建筑工程设计信息模型分类和编码标准》,分类对象编码由表编码、大类代码、中类
根据《建筑工程设计信息模型分类和编码标准》,分类对象编码由表编码、大类代码、中类
根据《建筑工程设计信息模型分类和编码标准》,建筑信息模型分类表代码应采用()数字
负责解释执行JavaScript代码的是()。A.Web服务器 B.Web浏览
在网页中创建一个如下图所示的表单控件的HTML代码是()。 A.<input
在网页中创建Email链接,代码正确的是()。A.<ahref=“call
()是正确的网页代码结构。A.<html></html><head><
()不是蠕虫病毒。A.冰河 B.红色代码 C.熊猫烧香 D.爱虫病毒
()属于系统软件,它直接执行高级语言源程序或与源程序等价的某种中间代码。A.编译
在html文档中,有如下代码: <form> List1:
随机试题
LegendaryPersonalBrandVocabularyandExpressionsPlayBiggerPointofVie
作为一名运动员、教练员和体育管理者,尤其是作为奥运会的技术官员,我最大的体会是:在奥运会中,没有什么比运动员的利益更重要了。我们整个奥运计划的制定是以运
Nexttimeyouenterausernameandpassword,thinkabouttherhythmofyour
Whatispopculture?Well,popis【11】forpopular.Thebeginningofpopcultu
培训成果转化不包含的方面是()A.培训成果转化的氛围 B.运用培训内容的
女性,44岁,风湿性心脏病病史11年,并发持续性房颤5年,5天前因受寒病情加重,
把下面的六个图形分为两类,使每一类图形都有各自的共同特征或规律,分类正确的一项是
只有确定了(),教育活动才能有组织、有计划、有系统地向着预定的方向进行。
下列关于民事责任的说法中,错误的是()。A.赔礼道歉属于民事责任的承担方式
施工队伍部署的原则包括( )。A.工区划分、现场施工交通、地形条件 B.结构
最新回复
(
0
)