【计算机类职业资格】二级C++-203及答案解析.doc
《【计算机类职业资格】二级C++-203及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++-203及答案解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+-203 及答案解析(总分:82.50,做题时间:90 分钟)一、选择题(总题数:35,分数:56.50)1.有 3 个关系 R、S 和 T 如下表所示: (分数:2.50)A.自然连接B交C除D并2.有如下程序: #includeiostream using namespace std; class Part public: Part(int x=0): val(x) coutval; Part() coutval; private: int val; ; class Whole public: whole(int x, int y, int z=0): p2(x), p1(y),
2、 val(z) coutVal; Whole() coutval; private: Part p1, p2; int val; ; int main() Whole obj(1, 2, 3); return 0; 执行这个程序的输出结果是_。(分数:1.00)A.123321B.213312C.213D.1231233.在定义一个类模板时,模板形参表是用一对括号括起来的,所采用的括号是_。(分数:1.00)A.()B.C.D.4.下面程序的运行结果是 _。 #includeiostream.h class A public virtual、() cout”call A: A()”end1;
3、; class B:public A B(int i)p=new chari: -B() delete)p; Cout”call B: B()”; ; void main() A*a=new B(8); Delete a; (分数:2.00)A.call B: B()B.call B: B()C.call A:A()D.call A:A()5.下列数据结构中,能够按照“先进后出”原则存取数据的是_。(分数:1.00)A.循环队列B栈C.队列D.二叉树6.有如下程序: #includeiostream using namespace std; int main() int*p; *p=9; co
4、ut“The value at p:“*p; return 0; 编译运行程序将出现的情况是_。(分数:2.00)A.编译时出现语法错误,不能生成可执行文件B.运行时一定输出:The value at p:9C.运行时一定输出:The value at p:*9D.运行时有可能出错7.以下程序的输出结果是 _ 。 #includeiostream.h void func(char*m) +m: cout*mend1; void main() static char*a=“MORNING“,“AFTERTOON“,“EVENING“; char*n: n=a; func(n); (分数:1.00
5、)A.为空B.MORNINGC.AFTERTOOND.EVENING8.有如下程序 #include iostream #include iomanip using namespace std; int main( ) coutsetprecision(3)fixedsetfill(“*“)setw(8); cout12.345_34.567; return 0; 若程序的输出是: *12.345*34.567 则程序中下划线处遗漏的操作符是 _ 。(分数:2.00)A.setprecision(3)B.fixedC.setfill(“*“)D.setw(8)9.下列叙述中正确的是_。(分数:
6、1.00)A.栈是一种先进先出的线性表B.队列是一种后进先出的线性表C.栈与队列都是非线性结构D.以上三种说法都不对10.为了提高函数调用的实际运行速度,可以将较简单的函数定义为_。(分数:1.00)A.内联函数B.重载函数C.递归函数D.函数模板11.考虑函数原型 void test(int a,int b=7,char z=“*7“),下面的函数调用中,属于不合法调用的是_。(分数:1.00)A.test(5);B.test(5,8);C.test(6,“#“);D.test(0,0,“*“);12.C 源程序中不能表示的数制是_。(分数:2.50)A.二进制B.八进制C.十进制D.十六进
7、制13.下列符号中可以用做 C+标识符的是_。(分数:1.00)A._radiusB.foobarC.elseD.3room14.有如下类定义: class Point private: static int how_many; ; _how_many=0; 要初始化 Point 类的静态成员 how_many,下画线处应填入的内容是_。(分数:1.00)A.intB.static intC.int Point:D.static int Point:15.如果表达式 x*y+z 中,“*”是作为友元函数重载的,“+”是作为友元函数重载的,则该表达式还可为(分数:1.00)A.operator+
8、(operator*(x,y),z)B.operator+(operator*(x,y),Z)C.operator*(operator+(x,y),z)D.operator+(operator*(x,y)16.必须用一对大括号括起来的程序段是_。(分数:1.00)A.switch 语句中的 case 标号语句B.if 语句的分支C.循环语句的循环体D.函数的函数体17.以下程序的输出结果是 _ 。 void main() int a=4,b=5,C=0,d; d=!a! b|!c; coutdend1; (分数:2.00)A.1BOC.非 0 的数D.-118.有如下类定义: class B
9、public:void fun1() private:void fun2() protected:void fun3() ; class D:public B protected:void fun4() ; 若 obj 是类 D 的对象,则下列语句中不违反访问控制权限的是_。(分数:2.00)A.obj.fun1();B.obj.fun2();C.obj.fun3();D.obj.fun4();19.数据库系统依赖于 _ 支持数据独立性。(分数:2.00)A.具有封装机制B.定义完整性约束条件C.模式分级,各级模式之间的映射D.DDL 语言与 DML 语言互相独立20.有如下程序: # inc
10、ludeiostream using namespace std; class Point int x,y; public: Point (int x1=0,int y1=0):x(x1),y(y1) int get()return x+y; ; class Circle Point center; int radius; public: Circle(int cx,int cy,int r):center(cx,cy),radius(r) int get()return center.get()+radius; ; int main() Circle c(3,4,5); coutc.get(
11、)endl; return 0; 运行时的输出结果是_。(分数:2.50)A.5B.7C.9D.1221.下列符号中可以用作 C+标识符的是_。(分数:2.00)A._radiusB.foobarC.elseD.3room22.下列语句都是程序运行时的第 1 条输出语句,其中一条语句的输出效果与其他三条语句不同,该语句是_。(分数:1.00)A.coutinternal12345;B.coutleft12345;C.coutright12345;D.coutsetw(6)12345;23.下列关于构造函数的描述中,错误的是_。(分数:2.50)A.构造函数名与类名相同B.构造函数可以有返回值C
12、.构造函数可以重载D.每个类都有构造函数24.Windows 环境下,由 C+源程序文件编译而成的日标文件的扩展名是_。(分数:2.50)A.cppB.exeC.objD.lik25.有如下程序: #includeiostream using namespace std; class Test public: Test() n+=2; Test() n-=3; static int getNum()return n; private: static int n; ; int Test:n=1; int main() Test*p=new Test; delete p; cout“n=“Test
13、:getNum()endl; return 0; 执行后的输出结果是_。(分数:2.00)A.n=0B.n=1C.n=2D.n=326.有如下程序: #includeiostream using namespace std; class Pair int m, n; public: Pair(int j, int k): m(j), n(k) int get() return m; int get()const return m+n; ; int main() Pair a(3, 5); const Pair b(3, 5); couta. get()b. get(); return 0; 执
14、行这个程序的输出结果是_。(分数:1.00)A.33B.38C.83D.8827.下列关于信息和数据的叙述不正确的是 _ 。(分数:2.00)A.信息是数据的符号表示B.信息是数据的内涵C.信息是现实世界事物的存在方式或运动状态的反映D.数据是描述现实世界事物的符号记录28.关于构造函数 A()的拷贝构造函数正确的是(分数:1.00)A.A(A *B) ;B.A(AB) ;C.A(A29.下列程序中,划线处正确的语句是 _ 。 #includeiostream.h Class Base Public: Void fun()cout“Base:fun“endl; ; Class Derived:
15、public Base void fun() _ /显示调用基类的函数 fun() Cout“Derived:fun“endl; ;(分数:1.00)A.fun()B.Base.fun()C.Base:fun()D.Base-fun();30.下列关于虚基类的描述中,错误的是_。(分数:2.00)A.使用虚基类可以消除由多继承产生的二义性B.构造派生类对象时,虚基类的构造函数只被调用一次C.声明“class B:virtual public A”说明类 B 为虚基类D.建立派生类对象时,首先调用虚基类的构造函数31.已知枚举类型声明语句为: enumCOLORWHITE,YELLOW,GREE
16、N=5,RED,BLACK=10; 则下列说法中错误的是(分数:2.00)A.枚举常量 YELLOW 的值为 1B.枚举常量 RED 的值为 6C.枚举常量 BLACK 的值为 10D.枚举常量 WHITE 的值为 132.有如下程序 #includeiostream.h void main() char ch25=“6937“,“8254“,*p2; int i,j,s0; for(i0;i(2;i+)pichi; for(i0;i(2;i+) for(j0;pij“/0,j+2) s10*s+pij-“0“; couts; 该程序的输出结果是 _ 。(分数:2.00)A.69825B.63
17、825C.6385D.69382533.有如下程序: #includeiostream using namespace std; class Base public: Base(int x=0):valB(x)coutvalB; Base()coutvalB; private: int valB; ; class Derived:public Base public: Derived(int x=0,int y=0):Base(x),valD(y)coutvalD; Derived()coutvalD; private: int valD; ; int main() Derived obj12
18、(2,3); return 0; 运行时的输出结果是_。(分数:3.00)A.2332B.2323C.3232D.322334.下列代码段中声明了 3 个类: class Person ; class Student: public Person ; class Undergraduate: Student ; 下列关于这些类之间关系的描述中,错误的是_。(分数:1.00)A.类 Person 是类 Undergraduate 的基类B.类 undergraduate 从类 Student 公有继承C.类 Student 是类 Person 的派生类D.类 Undergraduate 是类 P
19、erson 的派生类35.下列程序的运行结果为_。 #includeiostream. h void print(double a) cout+a; void print(int a, int b) coutba; void main() print(1. 2); cout“ “; print(3, 4); (分数:1.00)A.1.2 34B.2.2 34C.1.2 43D.2.2 43二、填空题(总题数:15,分数:26.00)36.类是用户定义的类型,具有类类型的变量称作 _ 1_ 。 (分数:2.00)37.若有以下程序: #include iostream using namespa
20、ce std; class Base public: void who()cout“ Base“end1: ; class Derived1: public Base public: void who() cout“Derived“end1; ; int main() Base *p; Derived1 obj1; p= p-who(); return 0; 则该程序运行后的输出结果是 _ 1_ 。 (分数:2.00)38.软件测试分为白箱(盒)测试和黑箱(盒)测试。等价类划分法属于 _ 1_ 测试。 (分数:2.00)39.在 MyClass 类的定义中,对赋值运算符=进行重载。请将画线处缺
21、失的部分补充完整。 1MyClass:operator=(const MyClass value=ths.value; return *this; (分数:2.00)40.数据库系统阶段的数据具有较高独立性,数据独立性包括物理独立性和 1 两个含义。 (分数:1.00)41.如下程序声明了一个二维图形类 TwoDShape,从其派生出矩形类 Rec。 #includeiostream #includestring using namespaee std, class TwoDShape/ 二维图形类 char name20; public: TwoDShape (char * n=“unkno
22、wn“) strcpy(name, n); Char * getName()return name; _ 1_ =0; ; class Rec: public TwoDShape double width, height public: Rec(double w-=0. 0,double h=0. 0):TwoDShape(“rectangle“) width=w; height=h; double getWidth() return width; double getHeight() return height; double area() return width * height; ;
23、int main() TwoDShape * shape; Shape=new Rec(2.1,3.0); cout“object is“shape-getName()“/n“; cout“Area is“shape-area()“/n“; return 0 请将程序补充完整,使程序在运行时输出: abject is triangle Area is 6.3 (分数:2.00)42.cin.getline(line,sizeof(line),“x“)表示的意思是读取 90 个字符存放到 line 如果遇到 1 则结束输入。 (分数:1.00)43.若 Xcs 是一个类,该类中具有一个函数体为空
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 C203 答案 解析 DOC
