2017年计算机二级考试C++考试试题及答案大纲

来源:文书网 7.03K

C++是一种面向对象的计算机程序设计语言。C++这个词在中国大陆的程序员圈子中通常被读做“C加加”。下面是小编整理的关于计算机二级考试C++考试试题及答案,欢迎大家参考!

2017年计算机二级考试C++考试试题及答案大纲

1). 在位运算中,操作数每右移一位,其结果相当于

A.操作数乘以2

B.操作数除以2

C.操作数乘以4

D.操作数除以4

正确答案:B

答案解析:右移运算符">>"是双目运算符。其功能是把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数。例如:设a=15,a>>2 表示把000001111右移为00000011(十进制3)。

2). 下面描述中,不属于软件危机表现的是( ).

A.软件过程不规范

B.软件开发生产率低

C.软件质量难以控制

D.软件成本不断提高

正确答案:A

答案解析:软件危机主要表现在:软件需求的增长得不到满足;软件开发成本和进度无法控制;软件质量难以保证;软件不可维护或维护程度非常低;软件的成本不断提高;软件开发生产率的提高赶不上硬件的发展和应用需求的增长。所以选择A。

3). 以下定义语句中正确的是( )。

a-b=0;

A=65+1,b=′b′;

t a=1,″b= &a,″c=&b;

le a=0.0.b=1.1;

正确答案:B

答案解析:本题考查数据类型的定义。选项A中是要定义变量并且赋初值,但方式不对,必须单独定义其类型。选项C给实型变量赋值时不用双引号,也不能将地址赋予实型变量,在选项D中,C语言允许在一个类型说明符后说明多个相同类型的变量,各变量之间要用逗号隔开,而不是用分号隔开,选项B正确。

4). 已知Value是一个类,Value是Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是( )。

e operator+( Value v,int i);

e operator+( Value v= value,int i);

e operator+( Value vint i=O);

e operator+( Value v= value,int i=O);

正确答案:B

答案解析:非成员函数的重载运算符函数的格式为operator+(),是运算符十重载函数。

5). 如果表达式一x/y中的″-″和″″是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为( )。

A.jsj-ej-0253.jpg

B.jsj-ej-0254.jpg

C.jsj-ej-0255.jpg

D.jsj-ej-0256.jpg

正确答案:B

答案解析:本题考核运算符的重载。假定已经作为某个类的成员函数重载了二元运算符+,且cl、c2都是该类的对象,则ator+(c2)与cl+c2含义相同。如果十作为该类的非成员函数重载,则operator+( cl,c2)与cl+c2含义相同。同理,运算符″″作为友元函数重载,则--x)y与表达式operator/((- - x),y)相同。前缀运算符″一一″作为友元函数重载,则- -x与operator - -( x)相同,所以组合起来是operator/(operator-( x),y);,即B选项。

6). 下面关于C++流的叙述中,正确的是( )。

是一个输入流对象

B.可以用ifstream定义一个输出流对象

C.执行语句序列char* y=″PQMN″;cout<

D.执行语句序列char x[80];ine(x,80);时,若输入Happy new year,则x中的.字符串是″Happy″

正确答案:A

答案解析:本题考查C++流的概念和I/()的格式化。cin是istream类的对象,即输入流对象。ifstream是输入文件流,类不能定义个输出流对象。getline函数的功能是允许从输入流中读取多个字符,并且允许指定输入终止,在读取完成后,从读取的内容中删除该终止字符,所以D选项中的语句序列后x中字符串应该是Happy new year。

7). 信息隐蔽的概念与下述哪一种概念直接相关( )。

A.软件结构定义

B.模块独立性

C.模块类型划分

D.模拟耦合度

正确答案:B

答案解析:信息隐蔽的概念与模块独立性这一概念直接相关。

8). 若变量已正确定义并赋值,以下符合C++语言语法的表达式是( )。

A.a:=b+1

B.a= b= c+2

18.5 %3

D.a= a+7=c+b

正确答案:B

答案解析:本题考查C++语言的正确赋值方法。a= b=c+2实际上相当于a=(b=c+2),进而可分解为两个表达式b= c+2和a=b。选项A中包含一个不合法的运算符″:=″;选项C应改为(int) 18.5%3;选项D可理解为两个表达式a+7=c+b和a= a+7,其中第一个是错的,因为C++语言规定赋值号的左边只能是单个变量,不能是表达式或常量。

9). 两个或两个以上模块之间联系的紧密程度称为( )。

A.耦合性

B.内聚性

C.复杂性

D.数据传输特性

正确答案:A

答案解析:耦合性是模块间互相连接的紧密程度的度量,取决于各个模块之间接口的复杂度、调用方式以及哪些信息通过接口。

10). 开发大型软件时,产生困难的根本原因是( )

A.大系统的复杂性

B.人员知识不足

C.客观世界千变万化

D.时间紧、任务重

正确答案:A

热门标签