| 全国计算机等级考试 历年真题 2007年计算机等级考试二级C++笔试模拟试题(1) |
一、选择题(每题2分,共计70分) |
|
|
|
2.已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是 A)acbed B)decab C)deabc D)cedba
|
|
A
B
C
D
|
3.链表不具有的特点是 A)不必事先估计存储空间 B)可随机访问任一元素 C)插入删除不需要移动元素 D)所需空间与线性表长度成正比
|
|
A
B
C
D
|
4.结构化程序设计的3种结构是 A)顺序结构、选择结构、转移结构 B)分支结构、等价结构、循环结构 C)多分支结构、赋值结构、等价结构 D)顺序结构、选择结构、循环结构
|
|
A
B
C
D
|
5.为了提高测试的效率,应该 A)随机选取测试数据 B)取一切可能的输入数据作为测试数据 C)在完成编码以后制定软件的测试计划 D)集中对付那些错误群集的程序
|
|
A
B
C
D
|
6.算法的时间复杂度是指 A)执行算法程序所需要的时间 B)算法程序的长度 C)算法执行过程中所需要的基本运算次数 D)算法程序中的指令条数
|
|
A
B
C
D
|
7.软件生命周期中所花费用最多的阶段是 A)详细设计 B)软件编码 C)软件测试 D)软件维护
|
|
A
B
C
D
|
8.数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为 A)C B)Basic C)DDL D)DML
|
|
A
B
C
D
|
9.下列有关数据库的描述,正确的是 A)数据库是一个DBF文件 B)数据库是一个关系 C)数据库是一个结构化的数据集合 D)数据库是组文件
|
|
A
B
C
D
|
10.下列有关数据库的描述,正确的是 A)数据处理是将信息转化为数据的过程 B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变_ C)关系中的每一列称为元组,一个元组就是一个字段 D)如果一个关系中的属性或属性组并非该关系的关键字, 但它是另一个关系的关键字,则称其为本关系的外关键字
|
|
A
B
C
D
|
11.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是 A)增加了一些新的运算符 B)允许函数重载,并允许设置缺省参数 C)规定函数说明符必须用原型 D)引进了类和对象的概念
|
|
A
B
C
D
|
12.下列哪个是C++语言的有效标识符? A)_No1 B)No.1 C)12345 D)int
|
|
A
B
C
D
|
13.设有定义int x; float v;,则10+x+v值的数据类型是 A)int B)double C)float D)不确定
|
|
A
B
C
D
|
14.下列程序的执行结果为 #include<iostream. h> void main() { int a=3,b=0; int*p=&a: b=+a++; cout<<*P<<”,”<<b<<endl; } A)3,4 B)4,3 C)3,4 D)4,4
|
|
A
B
C
D
|
15.下面程序的运行结果为 #include<iostream. h> void main() { for(int a=0,x=0;!x&&a<=10;a++) { a++; } l cout<<a<<endl; } A)10 B)11 C)12 D) 0
|
|
A
B
C
D
|
16.下列选项,不正确的是 A)for(int a=1;a<=10;a++); B)int a=1; do { a++; }while(a<=10) C)int a=1: while(a<=10) { a++; } l D)for(int a=1;a<=10;a++)a++;
|
|
A
B
C
D
|
17.下面关于数组的初始化正确的是 A)char str[]={‘a',’b','c‘} B)char str[2]={'a','b','c’} C)char str[2][3]={{'a‘,'b’},{’e’,'d’},{’e’,‘f'}} D)char str[]={'a','b','c’}
|
|
A
B
C
D
|
18.下列程序的输出结果为 #include<iostream. h> void main() { char,a[]={”hello",”the",”world”}; char**pa=a: pa++; cout<<*pa<<endl; } A)hello B)the C)world D)hellotheworld
|
|
A
B
C
D
|
19.决定C++语言中函数的返回值类型的是 A) return语句中的表达式类型 B)调用该函数时系统随机产生的类型 C)调用该函数时的主调用函数类型 D)在定义该函数时所指定的数据类型
|
|
A
B
C
D
|
20.下列程序的输出结果是 #include<iostream. h> int min(int a,int B) { if(a<B)return a; else return B; return 0; } void main() { cout<<min(1,min(2,3))<<endl; } A)0 B)1 C)2 D)3
|
|
A
B
C
D
|
21.下列程序的运行结果为 #include<iostream. h> void print(double a) { cout<<++a; } void print(int a,int b) { cout<<b<<a; } void main() { print(1.2); cout<<” ”; print(3,4); } A)1.2 34 B)2.2 34 C)1.2 43 D)2.2 43
|
|
A
B
C
D
|
22.对类成员访问权限的控制,是通过设置成员的访问控制 属性实现的,下列不是访问控制属性的是 A)公有类型 B)私有类型 C)保护类型 D)友元类型
|
|
A
B
C
D
|
23.在类的定义中,用于为对象分配内存空间,对类的数据成员 进行初始化并执行其他内部管理操作的函数是 A)友元函数 B)虚函数 C)构造函数 D)析构函数
|
|
A
B
C
D
|
24.类的析构函数的作用是 A)一般成员函数的初始化 B)类的初始化 C)对象的初始化 D)删除类创建的对象
|
|
A
B
C
D
|
25.下列说法正确的是 A)内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方 B)内联函数在编译时是将该函数的月标代码插入每个调用该函数的地方 C)类的内联函数必须在类体内定义 D)类的内联函数必须在类体外通过加关键字inline定义
|
|
A
B
C
D
|
26.下面对静态数据成员的描述中,正确的是 A)静态数据成员可以在类体内进行初始化 B)静态数据成员不可以被类的对象调用 C)静态数据成员不能受private控制符的作用 D)静态数据成员可以直接用类名调用
|
|
A
B
C
D
|
27.下面对于友元函数描述正确的是 A)友元函数的实现必须在类的内部定义 B)友元函数是类的成员函数 C)友元函数破坏了类的封装性和隐藏性 D)友元函数不能访问类的私有成员
|
|
A
B
C
D
|
28.在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是 A)派生类的对象可以赋给基类的对象 B)派生类的对象可以初始化基类的引用 C)派生类的对象可以直接访问基类中的成员 D)派生类的对象的地址可以赋给指向基类的指针
|
|
A
B
C
D
|
29.下面程序的运行结果为 #include<iostream. h> class A { public: A(){cout<<”1”;} ~A(){cout<<”2”;} } class B:public A { public: B(){cout<<”3”;} ~B(){cout<<”4”;} } void main() { B b; } A)1234 B)1324 C)1342 D)3142
|
|
A
B
C
D
|
30.下列关于虚基类的描述,错误的是 A)设置虚基类的目的是为了消除二义性 B)虚基类的构造函数在非虚基类之后调用 C)若同一层中包含多个虚基类,这些虚基类的构造函数按它们说明的次序调用 D)若虚基类由非虚基类派生而来,则仍然先调用基类构造函数,再调用派生类的构造函数
|
|
A
B
C
D
|
31.下列关于多态性的描述,错误的是 A)C++语言的多态性分为编译时的多态性和运行时的多态性 B)编译时的多态性可通过函数重载实现 C)运行时的多态性可通过模板和虚函数实现 D)实现运行时多态性的机制称为动态绑定
|
|
A
B
C
D
|
32.下列运算符中,在C++语言中不能重载的是 A)* B)>= C):: D)/
|
|
A
B
C
D
|
33.当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为 A)ios::in B)ios::out C)ios::in|ios::out D)以上都不对
|
|
A
B
C
D
|
34.下列程序的运行结果是 #include<iostream. h> class A { int a; public: A(){a=0;} A(int as) { a=as; cout<<a++; } }; void main() { Ax,y(2),z(3); cout<<endl; }
|
|
A
B
C
D
|
35.下面程序的输出结果是 #include<iostream. h> class example { int a: public: example(int b){a=n++;} void print(){a=a+1;cout < < a < <” ”;} void print()const{cout<<a<<;} } void main() { example x t(3); const example y(2); x.print(); y.print(); } A)2 2 B)4 3 C)4 2 D)3 2
|
|
A
B
C
D
|
二、填空题(每空2分,共计30分) |
| 1.算法的基本特征是可行性、确定性、 【1】 和拥有足够的情报。
|
| 输入答案,中间不含空格:
|
2.在长度为n的有序线性表中进行二分查找。在最坏的情况下, 需要的比较次数为 【2】 。
|
| 输入答案,中间不含空格:
|
| 3.在面向对象的程序设计中,类描述的是具有相似性质的一组 【3】 。
|
| 输入答案,中间不含空格:
|
| 4.通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为 【4】 。
|
| 输入答案,中间不含空格:
|
| 5.数据库管理系统常见的数据模型有层次模型、网状模型和 【5】 3种。
|
| 输入答案,中间不含空格:
|
6.在C++语言的结构化程序设计中, 【6】 是程序的基本组成单元;在C++语言 的面向对象设计框架中, 【7】 是程序的基本组成单元。
|
| 输入答案,中间不含空格:
|
| 7.上一题【7】
|
| 输入答案,中间不含空格:
|
| 8.假设int a=l,b=2;则表达式(++a/B) * b--的值为 【8】 。
|
| 输入答案,中间不含空格:
|
| 9.C++语言提供的基本控制结构可以分为3种类型:顺序结构、 【9】 和循环结构。
|
| 输入答案,中间不含空格:
|
10.C++语句const char * const p="hello" , ,所定义的指针p和它 所指的内容都不能被 【10】 。
|
| 输入答案,中间不含空格:
|
11.C++语言的参数传递机制包括传值和传地址两种,如果调用函数时, 需要改变实参或者返回多个值,应该采取 【11】 方式。
|
| 输入答案,中间不含空格:
|
12.对于下面定义的类MyClass,请在函数f( )中添加对象成员把n的值修改为50。 class MyClass { public: MyClass(int x){n=x;} void SetNum(int n1){n=n1;} private: int n; }; void f() { My Class*ptr=new MyClass(45); 【12】 }
|
| 输入答案,中间不含空格:
|
| 13.继承的方式有公有继承、私有继承和 【13】 3种。
|
| 输入答案,中间不含空格:
|
| 14.表达式operator+(x,y)还可以表示为 【14】 。
|
| 输入答案,中间不含空格:
|
| 15.类模板的使用实际士:是将类模板实例化成一个具体的 【15】 。
|
| 输入答案,中间不含空格:
|
Hi,亲爱的朋友,欢迎光临Passtwo!
您想做点什么呢?
I Want....
热门软件下载
实用电子地图
本站隆重推荐自主开发的VFP上机模拟系统免费下载使用
二级vfp上机模拟系统
|