【计算机类职业资格】二级C++-28及答案解析.doc

上传人:ownview251 文档编号:1324075 上传时间:2019-10-17 格式:DOC 页数:26 大小:134KB
下载 相关 举报
【计算机类职业资格】二级C++-28及答案解析.doc_第1页
第1页 / 共26页
【计算机类职业资格】二级C++-28及答案解析.doc_第2页
第2页 / 共26页
【计算机类职业资格】二级C++-28及答案解析.doc_第3页
第3页 / 共26页
【计算机类职业资格】二级C++-28及答案解析.doc_第4页
第4页 / 共26页
【计算机类职业资格】二级C++-28及答案解析.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、二级 C+-28 及答案解析(总分:87.50,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:59.50)1.有如下类的定义。应在空格处填入的语句是 ( )。class MyClass_ int x, y;public:MyClass(int a=0,int b=0)x=a;y=b;static void change)x-=10;y-=10; A. static B. const C. mutable D. 不需要填入内容(分数:1.00)A.B.C.D.2.下面关于 C+流的叙述中,正确的是U /U。 A.cin 是一个输入流对象 B.可以用 ifstream 定义一个输出流

2、对象 C.执行语句序列 char *y=“PQMN“;couty;将输出字符串 PQMN 的地址 D.执行语句序列 char x80;cin.getline(x,80);时,若输入 Happy new year,则 x 中的字符串是“Happy”(分数:2.00)A.B.C.D.3.已知有数组定义char a34;下列表达式中错误的是 A. a2=“WIN“ B. strcpy(a2,“WIN“) C. a23=W D. a01=a01(分数:2.00)A.B.C.D.4.关于动态存储分配,下列说法正确的是U /U。 A.new 和 delete 是 C+语言中专门用于动态内存分配和释放的函数

3、 B.动态分配的内存空间也可以被初始化 C.当系统内存不够时,会自动回收不再使用的内存单元,因此程序中不必用 delete 释放内存空间 D.当动态分配内存失败时,系统会立刻崩溃,因此一定要慎用 new(分数:2.00)A.B.C.D.5.关于静态数据成员的描述中正确的是U /U。 A. 类的静态数据成员不是类的所有对象共享的数据 B. 类的静态数据成员不能被类的成员函数调用 C. 类的静态数据成员不能被类的构造函数调用 D. 类的静态数据成员必须进行初始化(分数:2.00)A.B.C.D.6.有以下类定义:class Point public:Point(int x=0,int y=0)_x

4、=x; _y=y;void Move(int x Off, int y Off)_x+=x Off; _y+=y Off; void Print() constcout ( _x , _y ) end 1;private:int _x,_y;下列语句中会发生编译错误的是_。 A. Point pt; pr. Print(); B. const Point pt; pt. Print(); C. Point pt; pt. Move(1,2); D. const Point pt; pt. Move(1,2);(分数:2.00)A.B.C.D.7.算法的有穷性是指_。 A.算法程序的运行时间是有

5、限的 B.算法程序所处理的数据量是有限的 C.算法程序的长度是有限的 D.算法只能被有限的用户使用(分数:2.50)A.B.C.D.8.在位运算中,操作数每右移一位,其结果相当于 A.操作数乘以 2 B.操作数除以 2 C.操作数乘以 4 D.操作数除以 4(分数:1.00)A.B.C.D.9.数据库系统依赖于U /U支持数据独立性。 A.具有封装机制 B.定义完整性约束条件 C.模式分级,各级模式之间的映射 D.DDL 语言与 DML 语言互相独立(分数:2.00)A.B.C.D.10.已知一个有序线性表为(13,18,24,35,47,50,62,83,90,115,134),当用二分法查

6、找值为 90的元素时,查找成功的比较次数为U /U。 A. 1 B. 2 C. 3 D. 9(分数:2.00)A.B.C.D.11.变量定义如下;int *p; 则下列不同于*p=*p+1; 的是U /U。 A. *p+; B. + *p; C. *p+=1; D. +( *p);(分数:2.00)A.B.C.D.12.下列叙述中正确的是 A. 为了建立一个关系,首先要构造数据的逻辑关系 B. 表述关系的二维表中各元组的每一个分量还可以分成若干数据项 C. 一个关系的属性名表称为关系模式 D. 一个关系可以包括多个二维表(分数:2.00)A.B.C.D.13.如果表达式 y*x+中,“*”是作

7、为成员函数重载的运算符,“+”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为U /U。 A.x.operator+(0).operator*(y) B. operator*(x.operator+(0), y) C. y.operator*(operator+(x, 0) D. operator*(operator+(x, 0), y)(分数:2.00)A.B.C.D.14.有以下程序:Class Datepublic:Date(int y,int m,int d);yeary;month=m;dayd;Date(int y2000)yeary;month10;day=

8、1;)Date(Date int * pba;cout * p “,“ b endl; A. 3,4 B. 4,3 C. 3,4 D. 4,4(分数:2.00)A.B.C.D.16.与语句“coutendl;”不等价的是_。 A) cout/n B) cout/12 C) cout/xAD) cout/0(分数:2.00)A.B.C.D.17.下面关于 break 语句的描述中,不正确的是 A. break 可以用于循环体内 B. break 语句可以在 for 循环语句中出现多次 C. break 语句可以在 switch 语句中出现多次 D. break 语句可用于 if 条件判断语句内(

9、分数:1.00)A.B.C.D.18.以下 C+语言中用于单行注释的是 A./ B./* C. */ D. |(分数:1.00)A.B.C.D.19.在关系模型中, A. 为了建立一个关系,首先要构造数据的逻辑关系 B. 表示关系的二维表中各元组的每一个分量还可以分成若干数据项 C. 一个关系的属性名表称为关系模式 D. 一个关系可以包括多个二维表(分数:1.00)A.B.C.D.20.下列关于保护成员的说法中,正确的是U /U。 A.保护的成员只能被类本身的成员函数及友元类的成员函数访问 B.保护成员可以被程序中的任何代码访问 C.保护的成员与私有成员是完全一样的 D.保护成员访问权限和公有

10、成员是一样的(分数:2.00)A.B.C.D.21.下列叙述中正确的是 A. 线性链表是线性表的链式存储结构 B. 栈与队列是非线性结构 C. 双向链表是非线性结构 D. 只有根结点的二叉树是线性结构(分数:1.00)A.B.C.D.22.只能作为成员函数重载的是U /U。 A.= B.+ C.* D.new (分数:1.00)A.B.C.D.23.下列叙述中,错误的是( )。 A.false 是一个逻辑型常量 B.“b“是一个字符型常量 C.365 是一个 int 常量 D.3.1415926 是一个 double 常量(分数:2.00)A.B.C.D.24.关于构造函数 A( )的拷贝构造

11、函数正确的是 A. (*) ; B. () ; C. ( C. int c11=0; D. int d3=1,2,(1,2,31,2,3,4;(分数:2.00)A.B.C.D.27.有如下函数模板定义:templateclass TT func(T x, T y)return x*x+y*y;在下列对 func 的调用中,错误的是U /U。 A.func(3,5); B.func(3.0,5.5); C.func(3,5.5) D.funcint(3,5.5);(分数:2.00)A.B.C.D.28.在软件开发中,需求分析阶段产生的主要文档是U /U。 A. 可行性分析报告 B. 软件需求规格

12、说明书 C. 概要设计说明书 D. 集成测试计划(分数:1.00)A.B.C.D.29.语句 coutsetfill(“)setw(4)setfill(i)setw(7)mendl;的输出结果为U /U。 A.iiiimmmmmmm B.iiiimmmmmm C.iiiimmm D.iiiiimm(分数:2.00)A.B.C.D.30.有如下程序:#includeiostream#includeiomanipusing namespace std;int main( )Coutsetw(10) setfill(x)setprecision(8) left;Cout12.3456793_9876

13、5;return 0;若程厚的输出是 12.345679x98765xxxxx,则划线处缺失的部分是 A. setw(10) B. setfill(x) C. setprecision(8) D. right(分数:2.00)A.B.C.D.31.C+中,由类 istream 和类 ostream 而派出的一个类U /U,它提供双向 I/O 操作。 A. iostream B. fstream C. strstream D. istream(分数:1.00)A.B.C.D.32.下列情况中,不会调用拷贝构造函数的是U /U。 A.用一个对象去初始化同一类的另一个新对象时 B.将类的一个对象赋值

14、给该类的另一个对象时 C.函数的形参是类的对象,调用函数进行形参和实参结合时 D.函数的返回值是类的对象,函数执行返回调用时(分数:2.00)A.B.C.D.33.下列程序段中包含 4 个函数,其中具有隐含 this 指针的是U /U。int funl();class Testpublic:int fun2();friend int fun3();static int fun4(); A.fun1 B.fun2 C.fun3 D.fun4(分数:2.00)A.B.C.D.34.下列叙述中正确的是 A. 软件就是程序清单 B. 软件就是存放在计算机中的文件 C. 软件应包括程序清单以及运行结果

15、D. 软件包括程序、数据和文档(分数:1.00)A.B.C.D.35.下列字符串中,正确的 C 抖标识符是U /U。 A.foo-1 B.2b C.new D._256(分数:2.00)A.B.C.D.二、B填空题/B(总题数:15,分数:28.00)36.、*、-、:、?:这五个运算符 1 重载。(分数:1.00)填空项 1:_37.设有定义语句:int a=12;,则表达式 a*=2+3 的运算结果是 1。(分数:2.00)填空项 1:_38.面向对象的程序设计方法中涉及的对象是系统中用来描述客观事物的一个U U /U /U。(分数:2.00)填空项 1:_39.阅读下面程序: #incl

16、ude iostream.h int fun2(int m) if(m%3=0) return 1; else return 0; void fun1(int m, int for (i=1; im; i+) if(fun2(i) S=S*i; void main() int n=9, s=2; fun1(n, s); coutsend1; 该程序的运行结果是U U /U /U。(分数:2.00)填空项 1:_40.若以非成员函数形式,为类 Bounce 重载“!”运算符,其操作结果为一个 bool 型数据,则该运算符重载函数的原型是_。(分数:2.00)填空项 1:_41.对虚函数的调用有两

17、种方式:U U /U /U和U U /U /U。(分数:4.00)填空项 1:_42.冒泡排序在最好情况下时间复杂度为U U /U /U。(分数:2.00)填空项 1:_43.动态联编中直到_时才能确定调用哪个函数;而静态联编则是在_时进行的。(分数:1.00)填空项 1:_44.有如下类声明: class MyClass int i; private:int j; protected: int k; public: int m, n; 其中,私有成员的数量为U U /U /U。(分数:2.00)填空项 1:_45.下列程序的输出结果为U U /U /U。 #ineludeiostream.

18、h int void main() int n=3, m=12; max(m, n)+ cout“m=“m“, n= “nend1; (分数:2.00)填空项 1:_46.若有: int x=25,y=14,z=19; 则在计算表达式 x+=25 class circle /圆形物体的抽象基类 protected: double r; /半径 public: Circle(double radius=0):r(radius) _; /计算圆形物体表面积的纯虚函数声明 ; class Cylinder: public Circle /圆柱体类 double h;/高度 public: Cylin

19、der(double radius=0,double height=0): Circle(radius),h(height) virtual double Area( ) /计算圆柱体的表面积 return 2*PI*r*(r+h); ;(分数:2.00)填空项 1:_50.在 C+流类库中,根基类为U U /U /U。(分数:2.00)填空项 1:_二级 C+-28 答案解析(总分:87.50,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:59.50)1.有如下类的定义。应在空格处填入的语句是 ( )。class MyClass_ int x, y;public:MyClass

20、(int a=0,int b=0)x=a;y=b;static void change)x-=10;y-=10; A. static B. const C. mutable D. 不需要填入内容(分数:1.00)A. B.C.D.解析:解析 本题考核静态成员函数的使用。由题可知,函数 change()为类 MyClass 的静态成员函数。先来了解静态成员函数:静态成员函数与静态数据成员相似,也从属于类,只要类存在,静态成员函数就可以使用,静态成员函数的定义是在一般函数的定义前加上关键词 static。调用静态成员函数的格式如下:类名:静态成员函数名(参数表); 静态成员函数只能访问静态数据成员

21、、静态成员函数和类以外的函数和数据,不能访问类中的非静态数据成员(因为非静态数据成员只有对象存在时才有意义)。但静态数据成员和静态成员函数可由任意访问权限许可的函数访问。和一般成员函数类似,静态成员函数也有访问限制,私有静态成员函数不能由外界访问。 由静态成员函数只能访问静态数据成员、静态成员函数和类以外的函数和数据,不能访问类中的非静态数据成员可知,变量 x 和 y 只能是类 MyClass 的静态数据成员,所以 x 和 y 的定义为“static int x,y;”。2.下面关于 C+流的叙述中,正确的是U /U。 A.cin 是一个输入流对象 B.可以用 ifstream 定义一个输出流

22、对象 C.执行语句序列 char *y=“PQMN“;couty;将输出字符串 PQMN 的地址 D.执行语句序列 char x80;cin.getline(x,80);时,若输入 Happy new year,则 x 中的字符串是“Happy”(分数:2.00)A. B.C.D.解析:解析 本题考查 C+流的概念和 I/O 的格式化。cin 是 istream 类的对象,即输入流对象。ifstream 是输入文件流,类不能定义个输出流对象。getline 函数的功能是允许从输入流中读取多个字符,并且允许指定输入终止,在读取完成后,从读取的内容中删除该终止字符,所以 D 选项中的语句序列后 x

23、中字符串应该是 Happy new year。3.已知有数组定义char a34;下列表达式中错误的是 A. a2=“WIN“ B. strcpy(a2,“WIN“) C. a23=W D. a01=a01(分数:2.00)A. B.C.D.解析:解析 本题考查数组的基本知识,B、C、D 在 C 语言中都是允许的,A 选项的赋值是非法的。4.关于动态存储分配,下列说法正确的是U /U。 A.new 和 delete 是 C+语言中专门用于动态内存分配和释放的函数 B.动态分配的内存空间也可以被初始化 C.当系统内存不够时,会自动回收不再使用的内存单元,因此程序中不必用 delete 释放内存空

24、间 D.当动态分配内存失败时,系统会立刻崩溃,因此一定要慎用 new(分数:2.00)A.B. C.D.解析:5.关于静态数据成员的描述中正确的是U /U。 A. 类的静态数据成员不是类的所有对象共享的数据 B. 类的静态数据成员不能被类的成员函数调用 C. 类的静态数据成员不能被类的构造函数调用 D. 类的静态数据成员必须进行初始化(分数:2.00)A.B.C.D. 解析:6.有以下类定义:class Point public:Point(int x=0,int y=0)_x=x; _y=y;void Move(int x Off, int y Off)_x+=x Off; _y+=y Of

25、f; void Print() constcout ( _x , _y ) end 1;private:int _x,_y;下列语句中会发生编译错误的是_。 A. Point pt; pr. Print(); B. const Point pt; pt. Print(); C. Point pt; pt. Move(1,2); D. const Point pt; pt. Move(1,2);(分数:2.00)A.B.C.D. 解析:解析 const 修饰符改变值出错。7.算法的有穷性是指_。 A.算法程序的运行时间是有限的 B.算法程序所处理的数据量是有限的 C.算法程序的长度是有限的 D.

26、算法只能被有限的用户使用(分数:2.50)A. B.C.D.解析:解析 算法的有穷性,是指算法必须在有限的时间内做完,即算法必须能在执行有限步骤之后终止。算法的有穷性还应包括实现的执行时间的含义,如果一个算法需要执行千万年,显然失去了实用价值。8.在位运算中,操作数每右移一位,其结果相当于 A.操作数乘以 2 B.操作数除以 2 C.操作数乘以 4 D.操作数除以 4(分数:1.00)A.B. C.D.解析:解析 右移运算符“”是双目运算符。其功能是把“”左边的运算数的各二进位全部右移若干位,“”右边的数指定移动的位数。例如:设 a=15,a2 表示把 000001111 右移为0000001

27、1 (十进制 3)。9.数据库系统依赖于U /U支持数据独立性。 A.具有封装机制 B.定义完整性约束条件 C.模式分级,各级模式之间的映射 D.DDL 语言与 DML 语言互相独立(分数:2.00)A.B.C. D.解析:10.已知一个有序线性表为(13,18,24,35,47,50,62,83,90,115,134),当用二分法查找值为 90的元素时,查找成功的比较次数为U /U。 A. 1 B. 2 C. 3 D. 9(分数:2.00)A.B. C.D.解析:解析 根据二分法查找需要两次:首先将 90 与表中间的元素 50 进行比较,由于 90 大于 50,所以在线性表的后半部分查找:第

28、二次比较的元素是后半部分的中间元素,即 90,这时两者相等,即查找功。11.变量定义如下;int *p; 则下列不同于*p=*p+1; 的是U /U。 A. *p+; B. + *p; C. *p+=1; D. +( *p);(分数:2.00)A. B.C.D.解析:解析 *p=*p+1;是将指针变量 p 所指向的存储单元的值加 1,然后放入 p 所指向的存储单元中。而选项 A 中最后是将 p 的值加 1,即移动一个单位的存储单元。12.下列叙述中正确的是 A. 为了建立一个关系,首先要构造数据的逻辑关系 B. 表述关系的二维表中各元组的每一个分量还可以分成若干数据项 C. 一个关系的属性名表

29、称为关系模式 D. 一个关系可以包括多个二维表(分数:2.00)A. B.C.D.解析:解析 在一个二维表中,水平方向的行称为元组,每一行为一个元组,元组中的每一个分量不能再进行分割,故选项 B 错误;对关系的描述称为关系模式一个关系模式对应一个关系的结构,格式为:关系名(属性名 1,属性名 2,属性名 n),故选项 c 错误;一个关系就是一个二维表,故选项 D 错误。13.如果表达式 y*x+中,“*”是作为成员函数重载的运算符,“+”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为U /U。 A.x.operator+(0).operator*(y) B. opera

30、tor*(x.operator+(0), y) C. y.operator*(operator+(x, 0) D. operator*(operator+(x, 0), y)(分数:2.00)A.B.C. D.解析:解析 运算符函数有两种调用形式,第一种是像一般函数那样用函数名调用,即 y.operator*(z)或者 operator*(y,z);另一种是通过运算符构成表达式,即 y*z。因为“+”运算符既可以作为前缀运算符,又可以作为后缀运算符,所以重载这个运算符时,重载后缀“+”时必须多一个虚拟参数:int。14.有以下程序:Class Datepublic:Date(int y,int

31、 m,int d);yeary;month=m;dayd;Date(int y2000)yeary;month10;day=1;)Date(Date int * pba;cout * p “,“ b endl; A. 3,4 B. 4,3 C. 3,4 D. 4,4(分数:2.00)A.B. C.D.解析:解析 * p 为所指对象 a 的值,语句“ba;”等价于“bba; aa1;”。16.与语句“coutendl;”不等价的是_。 A) cout/n B) cout/12 C) cout/xAD) cout/0(分数:2.00)A.B.C.D. 解析:解析 coutendl 与选项 A、B、

32、C 均表示回车换行,而选项 D 是字符串的结尾标志。17.下面关于 break 语句的描述中,不正确的是 A. break 可以用于循环体内 B. break 语句可以在 for 循环语句中出现多次 C. break 语句可以在 switch 语句中出现多次 D. break 语句可用于 if 条件判断语句内(分数:1.00)A.B.C.D. 解析:解析 本题考查的是 break 语句的使用,break 可以结束 switch 语句和 for 循环语句,但是不能使用在条件判断语句内。18.以下 C+语言中用于单行注释的是 A./ B./* C. */ D. |(分数:1.00)A. B.C.D

33、.解析:解析 考查 C+语言中的注释问题。 解题要点 C+语言中的注释与 C 浯言不同,C 语言的注释符号只有/* */,而 C +在此基础上又加上了/,此注释用于单行注释。 考点链接 注释不影响程序的运行。19.在关系模型中, A. 为了建立一个关系,首先要构造数据的逻辑关系 B. 表示关系的二维表中各元组的每一个分量还可以分成若干数据项 C. 一个关系的属性名表称为关系模式 D. 一个关系可以包括多个二维表(分数:1.00)A.B.C. D.解析:解析 在关系模型中,不需要事先构造数据的逻辑关系,只要将数据按照一定的关系存入计算机,也就是建立关系,选项 A 错误。对于表示关系的二维表,其最

34、基本的要求是,表中元组的每一个分量必须是不可分的数据项,即不允许表中再有表,选项 B 和 D 错误。本题的正确答案是 C。20.下列关于保护成员的说法中,正确的是U /U。 A.保护的成员只能被类本身的成员函数及友元类的成员函数访问 B.保护成员可以被程序中的任何代码访问 C.保护的成员与私有成员是完全一样的 D.保护成员访问权限和公有成员是一样的(分数:2.00)A. B.C.D.解析:21.下列叙述中正确的是 A. 线性链表是线性表的链式存储结构 B. 栈与队列是非线性结构 C. 双向链表是非线性结构 D. 只有根结点的二叉树是线性结构(分数:1.00)A. B.C.D.解析:解析 一个非

35、空的数据结构如果满足下列两个条件:(1)有且只有一个根结点; (2)每一个结点最多有一个前件,也最多有一个后件。则称为线性结构。线性链表是线性表的链式存储结构,选项 A 的说法是正确的。栈与队列是特殊的线性表,它们也是线性结构,选项 B 的说法是错误的;双向链表是线性表的链式存储结构,其对应的逻辑结构也是线性结构,而不是非线性结构,选项 C 的说法是错误的;二叉树是非线性结构,而不是线性结构,选项 D 的说法是错误的。因此,本题的正确答案为 A。22.只能作为成员函数重载的是U /U。 A.= B.+ C.* D.new (分数:1.00)A. B.C.D.解析:23.下列叙述中,错误的是(

36、)。 A.false 是一个逻辑型常量 B.“b“是一个字符型常量 C.365 是一个 int 常量 D.3.1415926 是一个 double 常量(分数:2.00)A.B.C.D. 解析:解析 double 型数据一般占 8 个字节,D 选项超出了范围。24.关于构造函数 A( )的拷贝构造函数正确的是 A. (*) ; B. () ; C. ( C. int c11=0; D. int d3=1,2,(1,2,31,2,3,4;(分数:2.00)A.B.C.D. 解析:27.有如下函数模板定义:templateclass TT func(T x, T y)return x*x+y*y;

37、在下列对 func 的调用中,错误的是U /U。 A.func(3,5); B.func(3.0,5.5); C.func(3,5.5) D.funcint(3,5.5);(分数:2.00)A.B.C. D.解析:28.在软件开发中,需求分析阶段产生的主要文档是U /U。 A. 可行性分析报告 B. 软件需求规格说明书 C. 概要设计说明书 D. 集成测试计划(分数:1.00)A.B. C.D.解析:解析 A 错误,可行性分析阶段产生可行性分析报告。C 错误,概要设计说明书是总体设计阶段产生的文档。D 错误,集成测试计划是在概要设计阶段编写的文档。B 正确,软件需求规格说明书是后续工作如设计、

38、编码等需要的重要参考文档。29.语句 coutsetfill(“)setw(4)setfill(i)setw(7)mendl;的输出结果为U /U。 A.iiiimmmmmmm B.iiiimmmmmm C.iiiimmm D.iiiiimm(分数:2.00)A. B.C.D.解析:30.有如下程序:#includeiostream#includeiomanipusing namespace std;int main( )Coutsetw(10) setfill(x)setprecision(8) left;Cout12.3456793_98765;return 0;若程厚的输出是 12.34

39、5679x98765xxxxx,则划线处缺失的部分是 A. setw(10) B. setfill(x) C. setprecision(8) D. right(分数:2.00)A. B.C.D.解析:31.C+中,由类 istream 和类 ostream 而派出的一个类U /U,它提供双向 I/O 操作。 A. iostream B. fstream C. strstream D. istream(分数:1.00)A. B.C.D.解析:32.下列情况中,不会调用拷贝构造函数的是U /U。 A.用一个对象去初始化同一类的另一个新对象时 B.将类的一个对象赋值给该类的另一个对象时 C.函数的

40、形参是类的对象,调用函数进行形参和实参结合时 D.函数的返回值是类的对象,函数执行返回调用时(分数:2.00)A.B. C.D.解析:33.下列程序段中包含 4 个函数,其中具有隐含 this 指针的是U /U。int funl();class Testpublic:int fun2();friend int fun3();static int fun4(); A.fun1 B.fun2 C.fun3 D.fun4(分数:2.00)A.B. C.D.解析:解析 this 指针是成员函数所属对象的指针,是指向类对象的地址,是一个隐含的指针,隐含于每个类的非静态成员函数中。tun1()是外部函数,

41、tun3()是友元函数,fun4()是静态成员函数,故选 B。34.下列叙述中正确的是 A. 软件就是程序清单 B. 软件就是存放在计算机中的文件 C. 软件应包括程序清单以及运行结果 D. 软件包括程序、数据和文档(分数:1.00)A.B.C.D. 解析:解析 计算机软件是计算机系统中与硬件相互依存的另一部分,包括程序、数据及相关文档的完整集合。用一个等式表示,则为: 软件=程序+文档+数据 选项 A、B、C 错误,正确答案是 D。35.下列字符串中,正确的 C 抖标识符是U /U。 A.foo-1 B.2b C.new D._256(分数:2.00)A.B.C.D. 解析:二、B填空题/B

42、(总题数:15,分数:28.00)36.、*、-、:、?:这五个运算符 1 重载。(分数:1.00)填空项 1:_ (正确答案:不能)解析:37.设有定义语句:int a=12;,则表达式 a*=2+3 的运算结果是 1。(分数:2.00)填空项 1:_ (正确答案:60)解析:解析 本题考核 C+运算符运算优先级和结合性。表达式“a*=2+3,“先计算“2+3”得到 5,然后计算 a*=5,得到 a 的值为 60。38.面向对象的程序设计方法中涉及的对象是系统中用来描述客观事物的一个U U /U /U。(分数:2.00)填空项 1:_ (正确答案:实体)解析:解析 面向对象的程序设计方法中涉

43、及的对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,它由一组表示其静态特征的属性和它可执行的一组操作组成。39.阅读下面程序: #include iostream.h int fun2(int m) if(m%3=0) return 1; else return 0; void fun1(int m, int for (i=1; im; i+) if(fun2(i) S=S*i; void main() int n=9, s=2; fun1(n, s); coutsend1; 该程序的运行结果是U U /U /U。(分数:2.00)填空项 1:_ (正确答案:36)解析:40.若以非成员函数形式,为类 Bounce 重载“!”运算符,其操作结果为一个 bool 型数据,则该运算符重载函数的原型是_。(分数:2.00)填空项 1:_ (正确答案:bool operator!(Bounee);)解析:解析 单目运算符重载为非成员函数的一般格式为: 返回类型 operator 操作

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1