好文档 - 专业文书写作范文服务资料分享网站

2011年9月及2012年3月全国计算机等级考试二级C++真题

天下 分享 时间: 加入收藏 我要投稿 点赞

2011年9月全国计算机等级考试二级笔试C++语言程序设计 一、选择题

(1)下列叙述中正确的是( )。

A) 算法就是程序 B) 设计算法时只需要考虑数据结构的设计 C) 设计算法时只需要考虑结果的可靠性 D) 以上三种说法都不对 (2)下列关于线性链表的叙述中正确的是( )。

A) 各数据结点的存储空间可以不连续但它们的存储顺序与逻辑顺序必须一致 B) 各数据结点的存储顺序与逻辑顺序可以不一致但它们的存储空间必须连续 C) 进行插入与删除时不需要移动表中的元素 D) 以上三种说法都不对

(3)下列关于二叉树的叙述中正确的是( )。

A) 叶子结点总是比度为2的结点少一个 B) 叶子结点总是比度为2的结点多一个 C) 叶子结点数是度为2的结点数的两倍

D) 度为2的结点数是度为1的结点数的两倍 (6)程序调试的任务是( )。

A) 设计测试用例 B) 验证程序的正确性

C) 发现程序中的错误 D) 诊断和改正程序中的错误

(11)在对函数进行原型声明时下列语法成分中不需要的是( )。 A) 函数返回类型 B) 函数参数列表 C) 函数名 D) 函数体 (12)下列关于this指针的描述中正确的是( )。

A) 类的成员函数都有this指针 B) 类的友元函数都有this指针

C) 任何与类相关的函数都有this指针 D) 类的非静态成员函数都有this指针 (13)有如下类定义 class AA{ int a; public:

AA(int n=0):a(n){} }

class BB:public AA{ public:

BB(intn)______ };

其中横线处缺失部分是( )。

A) :a(n){} B) :AA(n){} C) {a(n);} D) {a=n;)

(14)为类Matrix重载下列运算符时只能作为Matrix类成员函数重载的运算符是( )。 A) + B) = C) << D) ++ (15)下列关于模板的描述中错误的是( )。

A) 类模板的成员函数都是模板函数 B) 函数模板是一种参数化类型的函数

C) 满足一定条件时可以省略模板实参 D) 模板形参只能由关键字typename声明 (16)要利用C++流实现输入输出的各种格式控制必须在程序中包含的头文件是( )。 A) fstream B) istreara C) ostream D) iomanip (17)下列选项中不是C++关键字的是( )。

1

A) class B) function C) friend D) virtual

(18)若有定义语句“int i=2, j=3;”则表达式i/j的结果是( )。 A) 0 B) 0.7 C) 0.66667 D) 0.66666667

(19)下列语句中与语句“n=(ab?(bc?1:0):0);”的功能等价的是( )。 A) if(a=B) n=0

B) if((aB) ||(bC) )n=1; else n=0

C) if(aB) if(bC) n=h else n=0; else n=0;

D) if(aB) n=1; else if(b=C) n=1; else if(bC) n=1; else n=0; (20)有如下语句序列 int x=100, &r=x;

cout<

己知其中变量x的地址为0012FF7C则执行该语句序列的输出结果为( )。 A) 100-100 B) 100-0012FF7C

C) 0012FF7C-100 D) 0012FF7C-0012FF7C

(21)己知函数f的原型是“void f(int*x, int &y);”变量v1、v2的定义是 “int v1, v2;”下列调用语句中正确的是( )。

A) f(v1, v2) B) f(v1, &v2); C) f(&v1, v2); D) f(&v1, &v2); (22)有如下类定义 class Sample { public;

Sample(int x):ref(x){} //① private:

Sample():ref(0){) //② static int va1=5; //③ const int ref; //④ };

上述程序段中错误的语句是( )。

A) ① B) ② C) ③ D) ④ (23)有如下类定义 class B{

public: void fun1(){} private: void fun2(){} protected: void fun3(){} };

class D: public B{

protected: void fun4(){} };

若obj是类D的对象则下列语句中不违反访问控制权限的是( )。 A) obj. fun1(); B) obj. fun2(); C) obj. fun3(); D) obj. fun4(); (24)有如下类定义 class MyClass public: Private: int data;

2

};

若要为MyClass类重载流输入运算符使得程序中可以“cinobj;”形 式输入MyClass类的对象obj则横线处的声明语句应为( )。 A) friend istream& operator(istream& is, MyClass& A) ; B) friend istream& operator(istream& is, MyClass A) ; C) istream& operator(istream& is, MyClass& A) ; D) istream& operator(istream& is, MyClass A) ;

(25)已知主函数中通过如下语句序列实现对函数模板swap的调用 int a[10], b[10]; swap(a, b, 10);

下列对函数模板swap的声明中会导致上述语句序列发生编译错误的是( )。 A) template

void swap(T a[], T b[], int size);

B) template swap(int size, T a[], T b[]); C) template void swap(T1 a[], T2 b[], int size); D) template

void swap(T1 a[], T2 b[], int size);

(26)若目前D盘根目录下并不存在test. txt文件则下列打开文件方式不会 自动创建test.txt文件的是( )。

A) ifstream fin; fin. open(\ B) fstream fio; fio. open(\test. txt”, ios_base::out); C) ofstream fout; fout. open(\test. txt”, ios_base::out); D) ofstream fout; fout. open(\test. txt”, ios_base::app); (27)已知类Myclass的定义如下 class MyClass{ public:

void function1(MyClass& C) {coutc. data) static void function2(MyClass& C) {cout<

static void function4(){cout<

private: int data; };

其中有编译错误的函数是( )。

A) function1 B) function2 C) function3 D) function4 (28)有如下程序 #includeiostream

using namespace std; class MyClass{ public:

MyClass() {cout<<'*';)

MyClass(MyClass& A) {cout<<'#';) ~MyClass() {cout<<'@';)

3

};

int main(); MyClass a; Myclass b(A) ; return 0; }

运行时的输出结果是( )。

A) *@#@ B) #@*@ C) *#@@ D) #*@@ (29)已知类Myclass的定义如下 class MyClass{ public:

MyClass(int D) {data=d;} ~MyClass (){} int data; };

下列对Myclass类对象数组的定义和初始化语句中正确的是( )。 A) MyClass arrays[2];

B) MyClass arrays[2]={MyClass(5)};

C) MyClass arrays[2]={MyClass(5), MyClass(6)}; D) MyClass*arrays=new MyClass[2]; (30)有如下程序 class Base{ public: int data; };

class Derived1:public Base{}; class Derived2:protected Base{}; int main(){ Derived1 d1; Derived2 d2; d1. data=0; //① d2. data=0; //② return 0; }

下列关于程序编译结果的描述中正确的是( )。

A) ①②皆无编译错误 B) ①有编译错误②无编译错误 C) ①无编译错误②有编译错误 D) ①②皆有编译错误 (31)有如下程序 #includeiostream using namespace std; class Base1{ public: Base1(int

D) {coutd;}

4

~Base1(){} };

class Base2{ public:

Base2(int D) {coutd;}

~Base2 (){} };

class Derived:public Base1, Base2{ public:

Derived(int a, int b, int c, int D) ;

Base1(B) , Base2(A) , b1(D) , b2(C) {} Private:

int b1; www.docin.comint b2; };

int main(){

Derived d(1, 2, 3, 4); return 0; }

运行时的输出结果是( )。

A) 1234 B) 2134 C) 12 D) 21 (32)有如下程序 #includeiostream

using namespace std; class Base{ public:

virtual void function1(){cout<<'0';} void function2(){cout<<'1';} };

class Derived:public Base{ public:

void function1(){cout<<'2';} void function2(){cout<<'3';} };

int main(){

Base*P=new Derived(); p ->function1() p->function2()

return 0; };

运行时的输出结果是( )。 A) O1 B) 21 C) 03 D) 23

(33)若为Fraction类重载前增1运算符++A) Fraction& operator++(); B) Fraction& operator++(int)

应在类体中将其声明为( )。5

2011年9月及2012年3月全国计算机等级考试二级C++真题

2011年9月全国计算机等级考试二级笔试C++语言程序设计一、选择题(1)下列叙述中正确的是()。A)算法就是程序B)设计算法时只需要考虑数据结构的设计C)设计算法时只需要考虑结果的可靠性D)以上三种说法都不对(2)下列关于线性链表的叙述中正确的是()。A)各数据结点的存储空间可以不连续但
推荐度:
点击下载文档文档为doc格式
3gwz123sdh1jxus0i347
领取福利

微信扫码领取福利

微信扫码分享