2007-2013全国计算机二级C++等级考试真题及答案(8)

2019-03-28 08:05

int main(){ MyString x(\,y(\; cout<<(x+=y)<

运行这个程序的输出结果是 D

A) abc B) cde C) abcde D) abccde

(34)有如下程序: A

#include #include using namespace std; int main(){ cout<

A) ##OK123 B) ##OK#123 C) OK##123 D) OK##123#

(35)有如下语句序列:

ifstream infile(\ if(infile.good())cout<<\ else{

cout<<\

ofstream outfile(\

if(outfile.fail())cout<<\ }

若执行这个语句序列显示的是BD,则说明文件DATA.DAT C A)以读方式打开成功

B)以读方式打开失败,但以写方式打开成功 C)以读方式打开失败,以写方式打开也失败 D)以读方式打开成功,以写方式打开也成功

二、填空题(每空2分,共30分)

(1)一棵二叉树共有47个结点,其中有23个度为2的结点,假设根结点在底1层,则该二叉树的深度为【1】 。

(2)设栈的存储空间为S(1:40),初始状态为bottom=0,top=0,现经过一系列入栈与出栈运算后,top=20,则当前栈中有【2】个元素。

(3)数据独立性分为逻辑独立性和物理独立性。当总体逻辑结构改变时,其局部逻辑结构可以不变,从而根据局部逻辑结构编写的应用程序不必修改,称为【3】 。

(4)关系数据库中能实现的专门关系运算包括【4】、连接和投影。

(5)软件按功能通常可以分为应用软件、系统软件和支撑软件(或工具软件),Unix操作系统属于【5】软件。

(6)若有定义语句“int x=10;”,则表达式“x<=10?20:30”的值为【6】。 (7)下列语句的作用是计算正整数n的各位数字之和,例如:n=123,sum=1+2+3,请将下列语句补充完整。

36

do{

sum+=; n=n/10; }while(n1=0)

(8)有如下程序:

#include using namespace std; void fun(int&x,int y){ y=y+x; x=y/4; x++; }

int main(){

int x=4,y=5; fun(x,y); cout<

运行这个程序的输出结果是【8】。 (9)有如下程序:

#include using namespace std; class A{ pubic;

A(){cout<<1;}

A(const A&){cout<<2;} -A(){cout<<3;} };

int main(){ A obj1;

A obj2(obj1); return 0; }

运行这个程序的输出结果是【9】。

(10)若下列程序的输出结果是20,请将横线处缺失部分补充完整。

#include using namespace std; class MyClass{ pubic;

MyClass(int x=)10:value(x){}

void SetValue(int x){value=x;cout<

int value; };

37

int main(){ MyClass*ptr=new MyClass; 【10】 //通过对象指针ptr调用SetValue函数 delete ptr; return 0; }

(11)有下列程序的输出结果是2334,请将横线处缺失部分补充完整。

#include using namespace std; class Base{ int m; pubic;

Base(int k):m(k){}

int getM()const{return m;} }

class Derived:public Base{ int n; public;

Derived(int k):【11】,n(k){} int getN()const{return n;} }

int main(){ Derived d1(3),d2(4); cout<

(12)在C++中,编译时的多态性是通过模板或函数【12】实现的。

(13)有些运算符既可以作为成员函数重载,也可以作为非成员函数重载。若在一个重载的运算符函数的定义中成功地使用了this指针,说明它是作为【13】重载的。

(14)有如下程序:

#include using namespace std; template

T Add(Tv1,Tv2){return v1+v2;} int main(){ cout<

运行这个程序的输出结果是【14】。 (15)有如下程序:

#include using namespace std; class Point{

38

double x,y; public;

Point(double xx=0.0,double yy=0.0):x(xx),y(yy){} double getX()const{return x;} double getY()const{return y;}

void show()const{cout<<'('<

class Line{

Point p1,p2; public;

Line(Point pp1,Point pp2):p1(pp1),p2(pp2){} Point LeftMost()const{

if(p1.getX()<=P2.getX())return p1; return p2; } }

int main(){ Line line(Point(3.1,5.2),Point(8.2,4.4)); line.LeftMost().show(); return 0; }

运行这个程序的输出结果是【15】。

2012年9月全国计算机等级考试二级笔试答案

二、填空题答案 1、6 2、21 3、物理独立性 4、选择 5、系统 6、 20 7、8、 8 9、1233 10、 ptr->setvalue(20); 11、base(k-1) 12、重载 13、成员函数 14、5,5.8 15、(3.1,5.2)

39

n


2007-2013全国计算机二级C++等级考试真题及答案(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:非常规油气资源

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: