历年全国计算机二级c考试真题及答案.docx
《历年全国计算机二级c考试真题及答案.docx》由会员分享,可在线阅读,更多相关《历年全国计算机二级c考试真题及答案.docx(108页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、全国计算机等级考试二级笔试试卷 公共基础学问及C+语言程序设计 (考试时间90分钟,满分100)分)一, 选择题(1)(35)每小题2分,共70分) 下列各题A), B), C), D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1) 下面叙述正确的是 A)算法的执行效率与数据的存储结构无关 B)算法的空间困难度是指算法程序中指令(或语句)的条数 C)算法的有穷性是指算法必需能在执行有限个步骤之后终止 D)以上三种描述都不对(2)以下数据结构中不属于线性数据结构的是 A)队列 B)线性表 C)二叉树 D)栈(3)在一棵二叉树上第5层的结点数最多是
2、A)8 B)16 C)32 D)15(4)下面描述中,符合结构化程序设计风格的是 A)运用依次, 选择与重复(循环)三种基本限制结构表示程序的限制逻辑 B)模块只有一个入口,可以有多个出口 C)留意提高程序的执行效率 D)不运用goto语句(5)下面概念中,不属于面对对象方法的是 A)对象 B)继承 C)类 D)过程调用(6)在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是 A)可行性分析 B)需求分析 C)详细设计 D)程序编码(7)在软件开发中,下面任务不属于设计阶段的是 A)数据结构设计 B)给出系统模块结构 C)定义模块算法 D)定义需求并建立系统模型(8)数据库系统
3、的核心是A)数据模型 C)软件工具B)数据库管理系统 D)数据库(9)下列叙述中正确的是 A)数据库系统是一个独立的系统,不须要操作系统的支持 B)数据库设计是指设计数据库管理系统 C)数据库技术的根本目标是要解决数据共享的问题 D)数据库系统中,数据的物理结构必需与逻辑结构一样(10)下列模式中,能够给出数据库物理存储结构与物理存取方法的是A)内模式 B)外模式 C)概念模式 D)逻辑模式(11)关于面对对象的程序设计方法,下列说法正确的是 A)“封装性”指的是将不同类型的相关数据组合在一起,作为一个整体进行处理 B)“多态性”指的是对象的状态会依据运行时要求自动变更 C)基类的私有成员在派
4、生类的对象中不行访问,也不占内存空间 D)在面对对象的程序设计中,结构化程序设计方法仍有着重要作用(12)推断字符型变量ch是否为大写英文字母,应运用表达式A ) ch=A & ch=Z B ) ch=ZC ) A=ch=A & ch n;switch(n) case 1: case 2: cout 1; case 3: case 4: cout 2; break;default: cout 3;时,若键盘输入1,则屏幕显示A)1 B)2 C)3 D)12(15)下列程序的输出结果是#include using namespace std;int main() char a = Hello,
5、World; char *ptr = a; while (*ptr) if (*ptr = a & *ptr = z) cout char(*ptr + A -a); else cout *ptr; ptr+; return 0;A ) HELLO, WORLD B ) Hello, WorldC ) hELLO, wORLD D ) hello, world(16)已知:int m=10;在下列定义引用的语句中,正确的是A ) int &x=m; B )int y=&m; C )int &z; D ) int &t=&m;(17)下列函数原型声明中错误的是A ) void Fun(int x
6、=0, int y=0); B ) void Fun(int x, int y);C ) void Fun(int x, int y=0);D ) void Fun(int x=0, int y);(18)已知程序中已经定义了函数test,其原型是int test(int, int, int);,则下列重载形式中正确的是A ) char test(int,int,int);B ) double test(int,int,double);C ) int test(int,int,int=0);D ) float test(int,int,float=3.5F);(19)有以下程序#include
7、int i = 0;void fun() static int i = 1; std:couti+,;std:couti,;int main() fun(); fun(); return 0;程序执行后的输出结果是A)1,2,1,2, B)1,2,2,3, C)2,0,3,0, D)1,0,2,0,(20)已知函数f的原型是:void f(int *a, long &b); 变量v1, v2的定义是:int v1;long v2;,正确的调用语句是A) f(v1, &v2); B) f(v1, v2); C) f(&v1, v2); D) f(&v1, &v2);(21)有以下类定义class
8、 MyClasspublic: MyClass()cout1;则执行语句MyClass a, b2, *p2;后,程序的输出结果是A)11 B)111 C)1111 D)11111(22)关于友元,下列说法错误的是A)假如类A是类B的友元,那么类B也是类A的友元B)假如函数fun()被说明为类A的友元,那么在fun()中可以访问类A的私有成员C)友元关系不能被继承D)假如类A是类B的友元,那么类A的全部成员函数都是类B的友元(23)关于动态存储支配,下列说法正确的是A)new与delete是C+语言中特地用于动态内存支配与释放的函数B)动态支配的内存空间也可以被初始化C)当系统内存不够时,会自
9、动回收不再运用的内存单元,因此程序中不必用delete释放内存空间D)当动态支配内存失败时,系统会马上崩溃,因此确定要慎用new(24)有以下程序#includeusing namespace std;class MyClasspublic:MyClass(int n)number = n;/拷贝构造函数MyClass(MyClass &other) number=other.number;MyClass()private: int number;MyClass fun(MyClass p)MyClass temp(p);return temp;int main()MyClass obj1(1
10、0), obj2(0);MyClass obj3(obj1);obj2=fun(obj3);return 0;程序执行时,MyClass类的拷贝构造函数被调用的次数是A)5 B)4 C)3 D)2(25)在公有派生的状况下,派生类中定义的成员函数只能访问原基类的 A)公有成员与私有成员 B)私有成员与爱惜成员 C)公有成员与爱惜成员 D)私有成员, 爱惜成员与公有成员(26)在C+中用来实现运行时多态性的是 A)重载函数 B)析构函数 C)构造函数 D)虚函数(27)一个类可以同时继承多个类,称为多继承。下列关于多继承与虚基类的表述中,错误的是 A)每个派生类的构造函数都要为虚基类构造函数供应
11、实参 B)多继承时有可能出现对基类成员访问的二义性问题 C)运用虚基类可以解决二义性问题并实现运行时的多态性 D)建立最派生类对象时,虚基类的构造函数会首先被调用(28)在一个类体的下列声明中,正确的纯虚函数声明是A) virtual void vf()=0; B) void vf(int)=0;C) virtual int vf(int); D) virtual void vf(int) (29)在下面的运算符重载函数的原型中,错误的是A) Volume operator - (double, double);B) double Volume:operator- (double);C) Vo
12、lume Volume: :operator - (Volume);D) Volume operator - (Volume, Volume);(30)下列是模板声明的起先部分,其中正确的是A) templateB) templateC) templateD) template(31)执行语句序列ofstream outfile(DATA.DAT);if(.) cout OK; else cout 是一个( ) A)用于输出操作的非成员函数 B)用于输入操作的非成员函数 C)用于输出操作的成员函数 D)用于输入操作的成员函数(33)有以下类定义class Point public: Point
13、(int x = 0, int y = 0) _.x = x; _.y = y; void Move(int xOff, int yOff) _x += xOff; _.y += yOff; void Print() const cout ( _x , _y ) endl; private: int _x, _y;下列语句中会发生编译错误的是A) Point pt; pt.Print();B) const Point pt; pt.Print();C) Point pt; pt.Move(l, 2); D) const Point pt; pt.Move(l, 2);(34)有以下类定义cla
14、ss MyClassprivate: int id; char gender, char *phone;public: MyClass():id(0),gender(#),phone(NULL) MyClass(int no, char ge=#, char *ph= NULl.) id=no;gende=ge;phone=ph; 下列类对象定义语句中错误的是A) MyClass myObj;B) MyClass myObj(11, );C) MyClass myObj(12, m);D) MyClass myObj(12);(35)有以下程序#include using namespace
15、std;class Complexpublic: Complex(double r =0, double i =0):re(r), im(i) double real() const return re; double imag() const return im; Complex operator +(Complex c) const return Complex(re+c.re, im+c.im); private: double re, im;int main() Complex a = Complex(l, 1) + Complex(5);cout a.real() + a.imag(
16、) i endl;return 0;程序执行后的输出结果是A) 6+6i B) 6+1i C) 1+6i D) 1+1i二, 填空题(每空2分,共30分) 请将每一个空的正确答案写在答题卡1-15序号的横线上,答在试卷上不得分。留意:以叮嘱关键字填空的必需拼法完整。(1)算法的困难度主要包括 1 困难度与空间困难度。(2)数据的逻辑结构在计算机存储空间中的存放形式称为数据的 2 。(3)若按功能划分,软件测试的方法通常分为白盒测试方法与 3 测试方法。(4)假如一个工人可管理多个设备,而一个设备只被一个工人管理,则实体“工人”与实体“设备”之间存在 4 的联系。(5)关系数据库管理系统能实现的
17、特地关系运算包括选择, 连接与 5 。(6)设有定义语句:int a=12;,则表达式a*=2+3的运算结果是 6 。(7)从实现的角度划分,C+所支持的两种多态性分别是 7 时的多态性与运行时的多态性。(8)将个函数声明为一个类的友元函数必需运用关键字 8 。(9)请按下面注释的提示,将类B的构造函数定义补充完整。class A int a;public: A(int aa=0) a=aa; class B: public A int b; A c;public:/用aa初始化基类A,用aa+1初始化类对象成员cB(int aa): 9 b=aa+2; (10)下列程序的输出结果是 10 。
18、#include using namespace std;int main() int i = 5; int &r = i; r = 7; cout i endl; return 0;(11)下列程序的输出结果是 11 。#include using namespace std;class Test public: Test() cnt+; Test() cnt-; static int Count() return cnt;private: static int cnt;int Test:cnt = 0;int main() cout Test:Count0 ; Test tl, t2; T
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 历年 全国计算机 二级 考试 答案
限制150内