[计算机类试卷]国家二级C++机试(操作题)模拟试卷281及答案与解析.doc

上传人:孙刚 文档编号:497356 上传时间:2018-11-28 格式:DOC 页数:7 大小:33KB
下载 相关 举报
[计算机类试卷]国家二级C++机试(操作题)模拟试卷281及答案与解析.doc_第1页
第1页 / 共7页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷281及答案与解析.doc_第2页
第2页 / 共7页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷281及答案与解析.doc_第3页
第3页 / 共7页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷281及答案与解析.doc_第4页
第4页 / 共7页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷281及答案与解析.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、国家二级 C+机试(操作题)模拟试卷 281及答案与解析 一、基本操作题 1 请使用 VC6或使用【答题】菜单打开考生文件夹 proj1下的工程 proj1,此工程中含有一个源程序文件 proj1 cpp。其中位于每个注释 “ERROR*found*”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: NUM 0 Value 1 注意:只修改注释 “ ERROR *found*”的下一行语句,不要改动程序中的其他内容。 proj1 cpp #include iostream using namespace std; class MyClasS int_i; friend void I

2、ncrement (MyClass f); public: const int NUN; ERROR *found* MyClass(int i 0)NUN 0; _i i; int GetValue()const return_i; ; ERROR*found* void Increment()f _i; int main() NyClass obj; ERROR *found* NyClass Increment(obj); cout “NUN “ obj NUN end1 “Value “ obj GetValue() end1; return 0; 二、简单应用题 2 请使用 VC6或

3、使用【答题】菜单打开考生文件夹 proj2下的工程 proj2,此工程包含一个源程序文件 proj2 cpp。其中定义了 Score类。 Score是一个用于管理考试成绩的类。其中,数据成员 _s指向存储成绩的数组,_n表示成绩的个数;成员函数 Sort使用冒泡排序法将全部成绩按升序进行排列。 请在程序中的横线处填写适当的代码,然后删除横线,以实现 Score类的成员函数 sort。 注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动 “ *found*”。 proj2 cpp #include iostream #include cstdlib #include ct

4、ime using namespace std; class Score public: Score(double*s, int n): _s(s), _(n) double GetScore(int i)const return _si; void Sort(); private: double *_s; int n; ; void Score Sort() *found* for(int i 0; i _n 1; _) *found* for(int j _; j i; j-) if(_sj _sj 1) ( 交换 _sj和 _sj 1 double t _sj; *found* _: *

5、found* _; int main() const int NUN 10; double sNUM; stand(time(0); for(int i 0; i NUN i ) si double(rand() RAND_MAX * 100; Score ss(s, NUM); ss Sort(); for(int j 0; J NUM; j ) cout ss GetScore(J) end1; return 0; 三、综合应用题 3 请使用 VC6或使用【答题】菜单 打开考生文件夹 proj3下的工程 prog3,其中声明了 ValArray类,该类在内部维护一个动态分配的整型数组。 V

6、alArray类的复制构造函数应实现对象的深层复制。请编写 ValArray类的复制构造函数。在 main函数中给出了一组测试数据,此种情况下程序的输出应该是: ValArray v1 1, 2, 3, 4, 5 ValArray v2 2, 2, 2, 2, 2 要求: 补充编制的内容写在 “ *333*”与 “ *666*”之间。不要修改程序的其他部分。 注意: 相关文件包括: main cpp、 ValArray h。 程序最后调用 writeToFile函数,使用另一组不同的测试数据,将不同的运行结果输出到文件 out dat中。输出函数 writeToFile已经编译为 obj文件。

7、 ValArray h #include iostream using namespace std; class ValArray int, * v; int size; public: ValArray(const int * P, intn): si ze(n) v new intsize; for(int i 0; i size; i ) vi Pi; ValArray(const ValArray&other); ValArray()deletev; void setElement(int i, int val) vi val; void print(ostream&out)const

8、 out ; for(int i 0; i size 1; i ) out vi “, “; out vsize 1 ; ; void writeToFile(const char * ); main cpp #include“ValArray h“ ValArray ValArray (const ValArray&other) *333* *666* int main() const int a 1, 2, 3, 4, 5); ValArray v1(a, 5); ValArray v2(v1); for(int i 0; i 5; i ) v2 setElement(i, 2); cou

9、t “ValArray v1 “; v1 print(cout); cout end1; cout “ValArray v2 “; v2 print(cout); cout end1; writeToFile(“); return 0; 国家二级 C+机试(操作题)模拟试卷 281答案与解析 一、基本操作题 1 【正确答案】 (1)MyClass(int i 0): NUM(0) (2)void Increment(MyClass& f)f _i; (3)Increment(obj); 【试题解析】 (1)主要考查考生对常量数据成员初始化方法的掌握,常量数据成员的初始化只能通过构造函数的成员初

10、始化列表进行,并且要使用关键字 const修饰 。该题的前一条语句 const int NUM;,说明 NUM是常量数据成员。 (2)主要考查考生对友元函数的掌握,友元函数的定义与声明要一致,先看该友元函数的声明部分: friend void Increment(MyClass& f);,返回类型为 void,函数参数为 MyClass& f;再比较出错的语句: void Increment()f _i; ,错误在于该函数没有参数,应把 MyClass& f填在括号内。 (3)主要考查友元函数的调用,友元函数并不属于类,因此调用友元函数时不需要添 加类名及作用域,只需要像调用普通函数一样即可。

11、 二、简单应用题 2 【正确答案】 (1)i (2)_n 1 (3)_sj _sj 1 (4)_sj 1 t 【试题解析】 (1)主要考查 for循环语句,从题目要求可知循环变量 i要从 0到 _n 2,因此 i要递增操作,即 i。 (2)主要考查考生对冒泡排序的掌握,这里要求从后往前扫描,比较相邻两个元素,若后者小则交换,因此在这里下标 j要从最后开始,即 int j _n_1。 (3)考查交换算法,在 if语句中 _sj _sj 1满足条件,则实现交换。因为已经把 _sj的值赋给了中间变量 t,所以这里要把 _sj 1的值赋给 _sj,即 _sj _sj 1;。 (4)考查交换算法,这里只

12、需把中间变量 t中的值赋给 _sj 1即可。 三、综合应用题 3 【正确答案】 Size other size; 把对象数组的大小赋值给 size v new intother size; 根据对象数组的大小动态分配数组 V for(int i 0; i size; i) vi 0ther vi; 遍历整个对喙的数组把值 other vi放到数组 v中 【试题解析】 主要考查考生对复制构造函数的掌握。由函数名:ValArray ValArray(const ValArray&other),知道要复制的对象是 other,对由ValArray类的成员: int * v; int size;知道要复制的内容是动态数组 v及整型变量 size。动态数组要使用 new语句分配内存,最后利用 for循环语句来完成复制过程。

展开阅读全文
相关资源
猜你喜欢
  • BS PD ISO TR 4191-2014 Plastics piping systems for water supply Unplasticized poly(vinyl chloride)(PVC-U) and oriented PVC-U (PVC-O) Guidance for installation《供水用塑料管系统 未增塑聚氯乙烯(PVC-U)和定向PVC-U (PVC-.pdf BS PD ISO TR 4191-2014 Plastics piping systems for water supply Unplasticized poly(vinyl chloride)(PVC-U) and oriented PVC-U (PVC-O) Guidance for installation《供水用塑料管系统 未增塑聚氯乙烯(PVC-U)和定向PVC-U (PVC-.pdf
  • BS PD ISO TS 13399-305-2017 Cutting tool data representation and exchange Creation and exchange of 3D models Modular tooling systems with adjustable cartridges for boring《切削工具数据表示和交换 三维模型的创造和交流.pdf BS PD ISO TS 13399-305-2017 Cutting tool data representation and exchange Creation and exchange of 3D models Modular tooling systems with adjustable cartridges for boring《切削工具数据表示和交换 三维模型的创造和交流.pdf
  • BS PD ISO TS 19337-2016 Nanotechnologies Characteristics of working suspensions of nano-objects for $ii$in $iv$ii$it$ir$io assays to evaluate inherent nano-object toxi city《纳米技术 评估纳米物体固有毒性的体外试验所.pdf BS PD ISO TS 19337-2016 Nanotechnologies Characteristics of working suspensions of nano-objects for $ii$in $iv$ii$it$ir$io assays to evaluate inherent nano-object toxi city《纳米技术 评估纳米物体固有毒性的体外试验所.pdf
  • BS PD ISO TS 21219-2-2014 Intelligent transport systems Traffic and travel information (TTI) via transport protocol experts group generation 2 (TPEG2) UML modelling rules《智能运输系统 利用第二代传输协议专家组 (TPEG.pdf BS PD ISO TS 21219-2-2014 Intelligent transport systems Traffic and travel information (TTI) via transport protocol experts group generation 2 (TPEG2) UML modelling rules《智能运输系统 利用第二代传输协议专家组 (TPEG.pdf
  • BS PD ISO TS 28560-4-2014 Information and documentation RFID in libraries Encoding of data elements based on rules from ISO IEC 15962 in an RFID tag with partitioned memory《信息与文献 图书馆中应用的无线射频识别技术.pdf BS PD ISO TS 28560-4-2014 Information and documentation RFID in libraries Encoding of data elements based on rules from ISO IEC 15962 in an RFID tag with partitioned memory《信息与文献 图书馆中应用的无线射频识别技术.pdf
  • BS S 150-1975 Specification for chromium-molybdenum-vanadium-niobium heat-resisting steel billets bars forgings and parts (930-1080 MPa) (Cr 10 5 Mo 0 6 V 0 2 Nb 0 3)《铬-钼-钒-铌-耐热钢坯、棒材、锻件及零件规范(930-.pdf BS S 150-1975 Specification for chromium-molybdenum-vanadium-niobium heat-resisting steel billets bars forgings and parts (930-1080 MPa) (Cr 10 5 Mo 0 6 V 0 2 Nb 0 3)《铬-钼-钒-铌-耐热钢坯、棒材、锻件及零件规范(930-.pdf
  • BS PD ISO IEC TR 20000-12-2016 Information technology Service management Guidance on the relationship between ISO IEC 20000-1 2011 and service management frameworks CMMI-SVC 《信息技术 .pdf BS PD ISO IEC TR 20000-12-2016 Information technology Service management Guidance on the relationship between ISO IEC 20000-1 2011 and service management frameworks CMMI-SVC 《信息技术 .pdf
  • BS PD ISO IEC TR 20007-2014 Information technology Cultural and linguistic interoperability Definitions and relationship between symbols icons animated icons pictograms characters .pdf BS PD ISO IEC TR 20007-2014 Information technology Cultural and linguistic interoperability Definitions and relationship between symbols icons animated icons pictograms characters .pdf
  • BS PD ISO IEC TR 29110-5-1-3-2017 Systems and software engineering Lifecycle profiles for Very Small Entities (VSEs) Software engineering Management and engineering guide Generic p.pdf BS PD ISO IEC TR 29110-5-1-3-2017 Systems and software engineering Lifecycle profiles for Very Small Entities (VSEs) Software engineering Management and engineering guide Generic p.pdf
  • 相关搜索

    当前位置:首页 > 考试资料 > 职业资格

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1