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

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

1、国家二级 C+机试(操作题)模拟试卷 42及答案与解析 一、基本操作题 1 使用 VC6打开考生文件夹下的源程序文件 modi l cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出: 10 TestClass 1 注意:不要改动 main函数,不能增行或删行,也不能更改程序的结构,错误的语句在 *error*的下面。 1 #include 2 class TestClassl 3 4 public: 5 TestClassl() 6 ; 7 *error* 8 private: 9 virtual TestClasSl() 10 11 US ing namespace std ;

2、12 coutm i=i; 26 27 Void print() 28 29 *error* 30 cout 2 #define MAX N 10 3 int XXMAX NMAX N; 4 int fun(int n) 5 6 7 8 void maln() 9 10 int n ; 11 do 12 13 coutn; 15 if(n=1) 16 17 break; 18 19 while(1); 20 for(int i=0; iXXij; 26 27 28 cout 2 template 3 clasS MyArrayClass 4 ( 5 private: 6 T*data ; 7

3、int length; 8 public: 9 MyArrayClass(int len) 10 11 length=len; 12 *1* 13 14 15 MyArrayClass() 16 17 *2* 18 19 20 T& operator(int i) 2l 22 *3* 23 24 ) 25 bool SetElement(int i, T t) 26 27 *4* 28 if() 29 f 30 datai=t ; 31 return true; 32 33 return false ; 34 35 ; 36 int main() 37 38 MyArrayClassobj(5

4、); 39 obj3=1 ; 40 coutobj SetElement(5, 2)endl; 41 coutobj SetElement(4, 2)endl ; 42 return 0 ; 43 国家二级 C+机试(操作题)模拟试卷 42答案与解析 一、基本操作题 1 【正确答案】 (1)删除 “private: ”语句 (2)TestClass2(int i) (3)std coutm_istd: endl ; 【试题解析】 程序要求输出值为 10, TestClassl。从已给定源程序的 main主函数开始入手, main主函数首先调用 fun函数, fun调用 TestClass2中

5、的 print()函数,其中 TestClass2继承了 TestClass l。 解题思路 (1)第 1个标识下的 “virtual TestClassl()”语句是 TestClassl0析构函数,不是私有函数,所以删除 “private: ”0 (2)“explicit TestClass2(int i)”构造函数语句中的 “explicit”是禁止隐式转换。程序中无法实现对类 TestClass2的直接使用,所以这里应该将其删除。即“TestClass2(inti)”。 (3)第 3个标识下实现, fun函数中 m_i的标准输出,即在屏幕上输出 10。在程序中用到 C+标准库时,要使用

6、 std标准命名空间进行限定。 cout为标准库函数,所以要声明 cout是在命名空间 std中定义的流对象,即 “std:coutm_istd: endl; ”或者添加 “using namespace std; ”。 二、简单应用题 2 【正确答案】 1 int data=0 ; 初始化求平方和变量 2 for(int i=0 ; in ; i+) 3 4 data+=XXii*XXii; 求正对角线平方和 5 if(i!=n-i-1) 6 data+=XXin-i-1*XXin-i-1;求逆对角线平方和 7 ) 8 return data; 【试题解析】 本题函数中的功能是输出 N行 N

7、列正方阵,然后求两条对角线上各元素之平方和。其中,假设矩阵行、列分别为 i、 j,那么对角线上的元素特点是主对角线上 i=j,以及逆对角线 i=n-i-1。 解题思路 (1)首先初始化求平方和变量,设置求平方和的变量为 0。 (2)然后利用 for循环求得矩阵正对角线平方和。 (3)最后求得逆对角线平方和,返回平方和变量。 三、综合应用题 3 【正确答案】 (1)添加语句: data=new T1en; (2)添加语句: dele七 edata; (3)添加语句: return datai; (4)将 “if()”补充完整为: if(ilength) 【试题解析】 程序中定义了类模板: MyA

8、rrayClass,含有成员变量 length和data指针,构造函数、析构函数、重载运算符 “”和 SetElement()函数。构造函数中申请内存空间给 data指针,析构函数中释放内存资源,重载运算符 “口 ”用来获得指定下标的数据, SetElement()用来设置指定下标的数据。 解题思路 (1)构造函数完成成员变量的初始化,在 MyArrayClass(int len)函数中申请数组的大小的内存空间,应该用 new申请动态存储空间, new返回一个指向其操作数类型变量的指针,第 1个标识下即将 new返回的指针赋值给 data指针,因此第 1个标识下应添加 “data=new Tlen; ”。 (2)析构函数完成资源的释放,删除由 new申请的内存资源,因此第 2个标识下应添加 “deletedata; ”。 (3)T&operator(int i)函数重载运算符 “”,返回指定下标的数据,因此第 3个标识下应添加 “return datai; ”。 (4)SetElement(int i, T t)是设置指定下标的数据,数组下标不能超限,函数体中的 if()用来判断下标位置是否超限,因此第 4个标识下应添加 “if(ilength)”。

展开阅读全文
相关资源
猜你喜欢
  • AIA NAS 3008-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf AIA NAS 3008-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf
  • AIA NAS 3009-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf AIA NAS 3009-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf
  • AIA NAS 301-1990 Washer - 2024 Aluminum Alloy Flat Oversize OD (Rev 1).pdf AIA NAS 301-1990 Washer - 2024 Aluminum Alloy Flat Oversize OD (Rev 1).pdf
  • AIA NAS 3010-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf AIA NAS 3010-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf
  • AIA NAS 3012-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf AIA NAS 3012-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf
  • AIA NAS 3014-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf AIA NAS 3014-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf
  • AIA NAS 3016-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf AIA NAS 3016-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf
  • AIA NAS 3016A-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS662.pdf AIA NAS 3016A-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS662.pdf
  • AIA NAS 3018-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf AIA NAS 3018-2001 (Inactive)Bolt Shear-Hexagon Head.0312 Oversize Shank 95 KSI Ftu Inactive for Design After July 1 1976 For NAS3003-() THRU NAS3020-() See NAS6603-()Y THRU NAS6620.pdf
  • 相关搜索

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

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