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

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

1、国家二级 C+机试(操作题)模拟试卷 1及答案与解析 一、基本操作题 1 使用 vC+6 O打开考生文件夹下的源程序文件 1 cpp,该程序运行时有错误,请改正其中的错误,使程序正常运行,并且输出以下结果: (4, 5) 7, 8 (4, 8) 注意:错误的语句在 * * * * * * * * error* * * * * * * *的下面,修改该语句即可。 试题程序: #include class TC0 public: TC0(int i, int j) x=i: y=j; * * * * * * * * error* * * * * * * * virtual void move(in

2、t a; int b) x+=a: y+=b; void print() cout #define MAXLEN 1024 void DecToBin(char*des, int n) void main() char desMAXLEN; int n=58: DecToBin(des, n); cout)”,参数表中各参数之间应该 用 “, ”隔开,因此第 1处的语句应改为 “virtual void move(int a, int b)”。在主函数的语句 “TCI obj1(1, 3,7, 8); ”中,可知构造函数 TC1有 4个参数,完成变量 m、 n、 x和 y的初始化,k和 1赋值

3、给 m和 n, i和 j赋值给 x和 y, x和 y的初始化可通过基类构造函数来完成对 x和 y的初始化、第 2处的语句应改为 “TC1(int i, int j, int k, int 1):TC0(i, j)”,第 3处调用的是基类的 print函数,而 “print(); ”是调用的派生类的print函数,因此此 时只能通过类名来直接调用 print函数,即第 3处应改为“TC0: print(); ”。 二、简单应用题 2 【正确答案】 int j, i=0; char temp; while(n!=0) desi=n 2+0; n=n 2; i+: 转化结果为二进制最高位在 des的

4、下标最低处,顺序刚好相反 desi=NULL: for(j=0; j(i 2; j+) 将顺序倒过来 temp=desj;交换 desj=desi-1-j; desi-1-j=temp: 【试题解析】 本题为将十进制数转换成二进制数,因此采用除 2求余法,通过该方法最终可以将一个十进制数转换成一个只包含 1和。的数组。除 2求余法得到的是。和 1的数值,不是 “0”和 “1”字符,还需将数字转化成字符, 0和 1通过加上“0”的 ASCII码便可得到 0和 1的 ASCII码字符。因为除 2求余法得到的字符数组是从低位到高位保存的,因此需要先倒序后再输出,可利用循环方式将顺序调转过来。 三、综

5、合应用题 3 【正确答案】 (1)将 “class TC2”补充完整为 “class TC2: public TC1”。 (2)将 “void print()补充完整为 “virtual void print()”。 (3)将 “p=obj3; ”修改为 “p=&obj3; ”。 (4)将 “p print(); ”修改为 “p- print(); ”。 【试题解析】 本题中第 1处要求 “类 TC2公共继承于 TC1”。从已有的类产生一个新的子类,成为类的派生。声明派生类的一般形式为 “class派生类名: 继承方式 基 类名 ”。根据题目中的要求以及派生类的般形式,在第 1处添加语句 “c

6、lass TC2: public TC1”。 第 2处要求 “Print函数为虚函数 ”。在 C+中,用 virtual声明的函数为虚函数,因此第 2处的语句应修改为 “Virtual void print()”。 第 3处要求 “使得 P指定对象 obj3”。 p为指针变量, obj3为类的对象,将一个指针变量指向另一个变量,只要把被指向的变量的地址赋给指针变量即可。取对象 obj3地址的语句为 &obj3,所以这里补全语句为 “p=&obj3; ”。 第 4处要求 “利用 p调用 print()函数 ”。 C+中用 “-”运算符实现成员访问,因此调用 print函数,应将第 4处的语句修改

展开阅读全文
相关资源
猜你喜欢
相关搜索

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

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