点击查看:2018年9月计算机二级C++考试冲刺提分题及答案汇总
单选题
1). 计算机能直接执行的程序是( )。
A.源程序
B.目标程序
C.汇编程序
D.可执行程序
正确答案:D
答案解析:由高级语言编写的程序称为″源程序″;由二进制代码表示的程序称为″目标程序″;由汇编语言编写的程序称为″汇编程序″。对于计算机本身来说,它只能接收和处理由O到1的代码构成的二进制指令和数据。所以计算机能识别的程序是″目标程序″。而计算可以直接执行的程序是可执行程序,即后缀为.exe的程序。
2). 下列叙述中正确的是( )。
A.C程序中的注释只能出现在程序的开始位置和语句的后面
B.C程序书写格式严格,要求一行内只能写一个语句
C.C程序书写格式自由,一个语句可以写在多行上
D.用C语言编写的程序只能放在一个程序文件中
正确答案:C
答案解析:在程序中注释部分对程序的运行结果不产生任何影响,增加了程序的易读性,它可以出现在任意位置,并且书写自由,一行内可以写多个语句,语句可以写在多行上;由于C语言编写的程序有很多的移植性,可以被多个程序文件引用。
3). C++语言本身没有定义IO操作,但I/O操作包含在C++实现中。C++标准库iostream提供了基本的I/O类。I/O操作分别由两个类istream和( )提供。
A.fstream
B.iostream
C.ostream
D.cin
正确答案:C
答案解析:本题考查的是C++标准库iostream提供的基本I/O类。istream提供了向流中插入数据的有关操作;ostream提供了从流中提取数据的有关操作。
4). 在E-R图中,用来表示实体联系的图形是( )
A.椭圆形
B.矩形
C.菱形
D.三角形
正确答案:C
答案解析:在E-R图中实体集用矩形,属性用椭圆,联系用菱形。
5). 完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是
A.黑箱测试法
B.白箱测试法
C.错误推测法
D.安装测试法
正确答案:A
答案解析:目的,让考生熟练掌握常用的测试方法及其概念。要点,黑箱测试方法完全不考虑程序的内部结构和内部特征,而只是根据功能导出测试用例。分析,白箱测试是根据对程序内部逻辑结构的分析来选取测试用例,白箱测试也称为逻辑覆盖测试,故选项B)不正确;错误推测法只是黑箱测试所使用的一种具体的方法,故选项C)不正确;安装测试是测试层次中的一种,它属于高级测试,故选项D)不正确。考点,常用的黑箱测试方法及其定义,白箱测试用例的准则。
6). 以下C++语言中用于单行注释的是
A.//
B./*
C.*/
D.|
正确答案:A
答案解析:目的,考查C++语言中的注释问题。要点,C++语言中的注释与C语言不同,C语言的注释符号只有/* */,而C++在此基础上又加上了//,此注释用于单行注释。考点,注释不影响程序的运行。
7). 如果进栈序列为e1、e2、e3、e4,则可能的出栈序列是( )。
A.e3、e1、e4、e2
B.e2、e4、e3、el1
C.e3、e4、e1、e2
D.任意顺序
正确答案:B
答案解析:根据栈先进后出的特点可知el肯定是最后出栈的,因此正确答案为选项B。
8). 对于重载的运算符>>,它是一个( )
A.用于输入的友元函数
B.用于输入的成员函数
C.用于输出的友元函数
D.用于输出的成员函数
正确答案:A
9). 带有虚基类的多层派生类构造函数的成员初始化列表中都要列出虚基类的构造函数,这样将对虚基类的子对象初始化( )。
A.与虚基类下面的派生类个数有关
B.多次
C.两次
D.一次
正确答案:D
答案解析:带有虚基类的多层派生类构造函数的成员初始化列表中都要列出虚基类的构造函数,这样将对虚基类的子对象初始化一次。
10). 最简单的交换排序方法是( )
A.快速排序
B.选择排序
C.堆排序
D.冒泡排序
正确答案:D
11). NULL是指
A.0
B.空格
C.未知的值或无任何值
D.空字符串
正确答案:C
答案解析:此题属于记忆性的题目,NULL是指未知的值或无任何值。
12). 用链表表示线性表的优点是( )
A.便于随机存取
B.花费的存储空间较顺序存储少
C.便于插入和删除操作
D.数据元素的物理顺序与逻辑顺序相同
正确答案:C
13). 关系模型允许定义3类数据约束,下列不属于数据约束的是( )。
A.实体完整性约束
B.参照完整性约束
C.属性完整性约束
D.用户自定义完整性约束
正确答案:C
答案解析:关系模型允许定义3类数据约束,即实体完整性约束、参照完整性约束和用户自定义完整性约束。其中前两种完整性约束由关系数据库系统支持,用户自定义完整性约束则由关系数据库系统提供完整性约束语言,用户利用该语言给出约束条件,运行时由系统自动检查。
14). 若有定义″int a[2][3];″,下列选项中对a数组元素正确引用的是( )。
A.a[2][!1]
B.a[2][3]
C.a[0][3]
D.a[1>2][!1]
正确答案:D
答案解析:数组的下标从O开始,数组a[2][3]包括元素a[0][0],a[0][1],a[0][2],a[1][0],a[1][1],a[1][2],只有选项D正确,1>2为假,所以是O,!为假也是0,即引用元素a[0][0],其他选项的引用均是下标越界。
15). C源程序中不能表示的数制是( )。
A.二进制
B.八进制
C.十进制
D.十六进制
正确答案:A
答案解析:C语言源程序不能表示二进制,在C语言中,所有的数值型常量都带有符号,所以整型数量只区别整型和长整型两种形式,整型常量和长整型常量均可用十进制、八进制、十六进制3种形式表示,故选项A不正确。
16). SQL语言又称为
A.结构化定义语言
B.结构化控制语言
C.结构化查询语言
D.结构化操纵语言
正确答案:C
17). 下列叙述中错误的是( )。
A.gets函数用于从终端读入字符串
B.getchar函数用于从磁盘文件读入字符
C.fputs函数用于把字符串输出到文件
D.fwrite函数用于以二进制形式输出数据到文件
正确答案:B
答案解析:本题考查的是C语言中输入、输出函数的使用,gets和getchar函数用于从标准输入设备键盘读入字符串和字符;fputs用于把字符串输出到文件;fwrite用于以二进制形式输出数据到文件。
18). 不能重载的运算符是( )
A.new
B.sizeof
C..*
D.++
正确答案:C
19). 结构化程序设计主要强调的是( )
A.程序的规模
B.程序的效率
C.程序设计语言的先进性
D.程序易读性
正确答案:D
20). 下面关于C++流的叙述中,正确的是( )。
A.cin是一个输入流对象
B.可以用ifstream定义一个输出流对象
C.执行语句序列char* y=″PQMN″;cout<
D.执行语句序列char x[80];cin.getline(x,80);时,若输入Happy new year,则x中的字符串是″Happy″
正确答案:A
答案解析:本题考查C++流的概念和I/()的格式化。cin是istream类的对象,即输入流对象。ifstream是输入文件流,类不能定义个输出流对象。getline函数的功能是允许从输入流中读取多个字符,并且允许指定输入终止,在读取完成后,从读取的内容中删除该终止字符,所以D选项中的语句序列后x中字符串应该是Happy new year。
21). 若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是( )。
A.函数调用可以作为独立的语句存在
B.函数调用可以无返回值
C.函数调用可以出现在表达式中
D.函数调用可以作为、一个函数的形参
正确答案:D
答案解析:本题考查函数的调用方式。函数的形参和实参具有以下特点:①形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放分配的内存单元,因此,形参只有在函数内部有效,函数调用结束返回主调函数后则不能再使用该形参变量;②实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参,因此应通过预先用赋值、输入等办法使实参获得确定值;③实参和形参在数量上、类型上、顺序上应严格一致,否则会发生″类型不匹配″的错误;④函数调用中发生的数据传送是单向的。即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化。
22). 设int a=10,b=11,c=12;,表达式(a+b)
A.2
B.0
C.-2
D.1
正确答案:B
答案解析:本题考察的是运算符的优先级,应该先计算a+b的值为21,然后与c比较大小的值为0,根据"&&"的运算规则,整个表达式的值为0。
23). 若要对Date类中重载的加法运算符成员函数进行声明,下列选项中正确的是( )。
A.Data+( Data);
B.Data operator+( Data);
C.Data+operator( Data);
D.operator+( Data.Data);
正确答案:B
答案解析:重载运算符的函数一般格式如下:函数类型operator运算符名称(形参列表),因此选B。
24). 下列叙述中正确的是( )
A.循环队列中的元素个数随队头指针与队尾指针的变化而动态变化
B.循环队列中的元素个数随队头指针的变化而动态变化
C.循环队列中的元素个数随队尾指针的变化而动态变化
D.以上说法都不对
正确答案:A
答案解析:在循环队列中,用队尾指针rear指向队列中的队尾元素,用排头指针front指向排头元素的前一个位置。因此,从排头指针front指向的后一个位置直到队尾指针rear指向的位置之间所有的元素均为队列中的元素。所以循环队列中的元素个数与队头指针和队尾指针的变化而变化,A正确。
微信搜索"考试吧"了解更多考试资讯、下载备考资料
相关推荐: