最新全国计算机等级考试二级c++题库12共17套文档格式.docx
- 文档编号:22184694
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:18
- 大小:26.86KB
最新全国计算机等级考试二级c++题库12共17套文档格式.docx
《最新全国计算机等级考试二级c++题库12共17套文档格式.docx》由会员分享,可在线阅读,更多相关《最新全国计算机等级考试二级c++题库12共17套文档格式.docx(18页珍藏版)》请在冰豆网上搜索。
A、树结构
B、网结构
C、线性表
D、二维表
在关系数据库中,用二维表来表示实体之间联系。
8、索引属于______。
A、模式
B、模式
C、外模式
D、概念模式
模式〔InternalSchema〕又称物理模式〔PhysicalSchema〕,它给出了数据库物理存储结构与物理存取方法,如数据存储的文件结构、索引、集簇与hash等存取方式与存取路径。
9、下面不属于软件设计原那么的是______。
A、抽象
B、模块化
C、自底向上
D、信息隐蔽
在软件设计过程中,必须遵循软件工程的根本原那么:
这些原那么包括抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可靠性。
此题答案为C。
10、将E-R图转换到关系模式时,实体与联系都可以表示成______。
A、属性
B、关系
C、键
D、域
关系是由假设干个不同的元组所组成,因此关系可视为元组的集合,将E-R图转换到关系模式时,实体与联系都可以表示成关系。
11、关于纯虚函数,以下表述正确的选项是______。
A、纯虚函数是没有给出显现版本〔即无函数体定义〕的虚函数
B、纯虚函数的声明总是以"
=0"
完毕
C、派生类必须实现基类的纯虚函数
D、含有纯虚函数的类不可能是派生类
此题考查纯虚函数的概念。
在某些情况下基类无法确定一个虚函数的具体操作方法或容,只能靠派生类来提供各个具体的实现版本。
基类中的这种必须靠派生类提供重定义的虚函数叫做纯虚函数。
为了将一个虚函数声明为一个纯虚函数,需要在完毕符号;
前加上=0;
如果派生没有重定义纯虚函数,这个函数仍然是纯虚函数。
故此题选B。
12、以下程序的输出结果是______。
#include<
iostream>
usingnamespacestd;
intmain()
{
inta=2,b=-1,c=2;
if(a<
b)
if(b<
0)c=0;
else
c+=1;
cout<
<
c<
endl;
return0;
}
A、0
B、1
C、2
D、3
此题考查的是if--else结构。
为了解决if--else结构中可能出现的二义性,C++中规定关键字是与它前面最近的未配对的且可见的那个if关键字配对。
所以此题的else是和第二个if配对的。
而此题第一个if中的条件就不成立,故最后输出c原来的数值。
故此题选C。
13、要将一个函数声明为联函数必须在其前面加上______。
A、void
B、include
C、inline
D、virtual
此题考查联函数的定义。
在C++中使用inline关键字来定义联函数。
inline关键字放在函数定义中函数类型之前。
所以此题选C。
14、以下各种函数中,______不是类的成员函数。
A、构造函数
B、析构函数
C、友元函数
D、拷贝构造函数
此题考查的是类的根本概念。
类由数据成员和成员函数组成。
友元函数是外界函数。
15、对于以下函数,调用语句错误的选项是____。
voidshow(intid=10,char*name="
hello"
)
name<
"
:
"
id<
A、show(5);
B、show();
C、show(5,"
abc"
);
D、show;
此题考查的是函数的调用。
当调用一个函数时,其实参的个数、类型与排列次序必须与函数定义时的形参一致。
如果没有定义形参或者形参都给了默认值,那么调用时可以省略实参,但是括号不能够省略。
故此题选D。
16、当使用ofstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为_____。
A、ios:
in
B、ios:
binary
C、ios:
in|ios:
out
D、ios:
out
此题考查输入输出流对象。
当使用ofstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为ios:
out。
17、一个类的友元函数能够通过成员操作符访问该类的______。
A、私有成员
B、保护成员
C、公有成员
D、公有成员、保护成员、私有成员
此题考查友元函数的概念。
友元函数不是当前类的成员函数,而是独立于当前类的外部函数,但是它可以访问该类的所有对象成员,包括公有成员、保护成员、私有成员。
18、下面类定义中错误的语句是______。
classSample
public:
Sample(intval);
~Sample(intval);
private:
inta;
Sample();
A、Sample(intval);
B、~Sample(intval);
C、inta;
D、Sample();
此题考查类的定义。
对于类定义,其中的析构函数不可以带有参数。
所以此题选B。
19、每个C++程序必须有且仅有一个______。
A、函数
B、预处理指令
C、主函数
D、语句
此题考查c++的根本概念。
每一个c++程序必须有而且只能有一个主函数,每个程序的执行都是从主函数的开始的。
20、类的默认的无参构造函数______。
A、仅当未定义无参构造函数时存在
B、在任何情况下都存在
C、仅当未显式定义任何构造函数时存在
D、仅当未定义有参构造函数时存在
此题考查构造函数的概念。
默认无参构造函数只有当没有显式定义任何构造函数时才存在。
21、关于this指针的说法不正确的选项是______。
A、它是成员函数所属对象的指针
B、它是一种隐含指针,存在于每个类的非静态成员函数中
C、可以通过this.成员变量的形式访问类中的数据成员
D、成员函数访问类中数据成员的格式可写成:
this->
成员变量
此题考查this指针的概念。
this指针是成员函数所属对象的指针,它指向当前类对象的地址。
this指针是一个隐含指针,它隐含于每个类的非静态成员函数中。
通过this指针访问当前对象成员有两种方式:
(*this).成员,this->
成员。
22、下面是关于类MyClass的定义,对定义中的各语句描述正确的选项是______。
classMyClass
voidMyClass(inta){x=a}//1
intf(inta,intb)//2
{
x=a;
y=b;
}
intf(inta,intb,intc=0)//3
z=c;
staticvoidg(){x=10;
}//4
intx,y,z;
};
A、语句1是类MyClass的构造函数的定义
B、语句2和3实现类成员函数的重载
C、类4实现对类成员变量x的更新操作
D、语句1、2、3、4都不正确
此题考查的是指针和数组。
数组名实际上是一个常量指针,存放数组第一个元素的地址。
既然是一个常量指针其值是不可改变的,所以不能有a++之类的语句。
故此题选A。
23、以下程序的功能是将数组中的所有元素全部输出,对于程序中缺少的语句,以下语句填入其中不正确的选项是______。
inta[]={1,2,3,4};
int*pa=a;
for(inti=0;
i<
4;
i++)
______;
A、cout<
*a++<
'
'
B、cout<
*pa++<
C、cout<
*(a+i)<
D、cout<
*(pa+i)<
24、执行以下程序后,输出的结果是______。
intfact(intn)
if(n<
=1)
return1;
returnn+fact(n-1);
fact(4)<
A、1
B、4
C、10
D、15
此题考查的是递归函数。
如果一个函数直接调用它自己该函数叫直接递归。
fact〔intn〕函数,其中如果n>
1调用了自身n-1次。
25、虚函数的______可以不同。
A、函数体容
B、返回类型
C、参数个数
D、函数名
此题考查虚函数的概念。
虚函数是一种单界面多实现版本的实现方法,即函数名、返回类型、函数类型和个数顺序完全一样,但函数体容可以完全不同。
26、以下变量名的写法中,正确的选项是______。
A、byte-size
B、CHINA
C、double
D、A+a
此题考查变量名的命名规那么。
标识符识用户为程序中各种需要命名的的〞元素“所起的名字。
这些元素:
包括变量、符号常量、函数、函数的参数、结构、类等。
标识符是以一个字母或者下划线开头有字母下划线和数字组成。
不能与任意一个关键字同名。
区分大小写。
27、假定AB为一个类,px为指向该类动态对象数组的指针,该数组的长度为n,那么执行"
delete[]px;
语句时,自动调用该类的析构函数的次数为______。
C、n
D、n+1
此题考查的是类的析构函数的调用。
释放px是,后自动调用px所指向对象数组的析构函数,都会调用类的析构函数。
28、对于结构中定义的成员,其隐含访问权限为______。
A、public
B、protected
C、private
D、static
此题考查结构体的概念。
结构体默认的访问权限是public,而类默认的访问权限是private。
29、下面程序的输出结果是______。
//计算字符串长度
intfun(char*);
fun("
intfun(char*s)
char*t=s;
while(*t!
='
\0'
)t++;
return(t-s);
A、语法错误
B、5
C、6
D、0
此题考查根本算法。
程序的功能是求一个字符串的实际长度。
在C++中字符串是以'
作为完毕的标志的。
函数fun中while循环的进展的条件是t!
='
所以当循环完毕t指向的是字符串的最后一个字符。
30、下面语句,循环执行的次数为______。
for(intj=0;
j<
=i;
j++)
*'
;
A、16
B、10
C、13
D、14
此题考查循环的根本应用。
解题思路为:
此题是一个二重循环结构,第一重循环的进展的条件是i〈4,第二重循环进展的条件是j〈=i,随着第一重循环的进展,第二重循环每次执行的次数会有相应的增加。
第一循环进展了4次,第二重循环每次执行的次数依次为1,2,3,4。
故最后循环执行了10次。
31、以下运算中,______运算符在C++中不能重载。
A、?
B、+
C、-
D、<
=
此题考查的是运算符重载。
在C++中限制“.〞,“.*〞,“->
*〞,“:
〞,“?
〞等操作符的重载。
32、执行以下程序后,输出的结果是______。
inta=-5,b=0;
while(++a)
b++;
b<
C、4
D、5
此题考查的是while循环。
循环条件是++a,在c++中,对于非0值全都为真,0代表假。
a的初始值为-5,所以循环能得以进展4次。
33、以下程序的输出结果是______。
intn[][3]={10,20,30,40,50,60};
int(*p)[3];
p=n;
p[0][0]<
"
*(p[0]+1)<
(*p)[2]<
A、103050
B、102030
C、204060
D、103060
此题考查的是二维数组和指针数组的联系。
二维数组每一行都对应一个指针,这个指针指向每行第一个元素。
题中p[0][0]与n[0][0]对应,*(p[0]+1)与n[0][1]对应,(*p)[2]与p[0][2]对应。
所以此题答案是B。
34、在一个派生类中,对基类成员、类对象成员、派生类静态成员和非类对象成员最后初始化的是______。
A、类对象成员
B、非类对象成员
C、派生类静态成员
D、基类成员
此题考查的是派生类。
建立派生类对象时,构造函数的执行顺序是,执行基类的构造函数,然后执行成员对象的构造函数,执行派生类的构造函数。
35、以下关于派生类的描述中错误的选项是______。
A、一个派生类可以作为另一个派生类的基类
B、派生类至少有一个基类
C、派生类的缺省继承方式是private
D、派生类只继承了基类的公有成员和保护成员
此题考查了派生类的根本概念。
继承方式有3种:
公有继承、私有继承和保护继承。
如果不显式地给出继承方式,缺省的继承方式是私有继承。
派生类从基类继承来所有的成员,但是基类的私有成员派生类是不可直接访问的。
所以此题选D。
36、软件工程研究的容主要包括:
______技术和软件工程管理。
标准答案为:
软件开发
基于软件工程的目标,软件工程的理论和技术性研究的容主要包括:
软件开发技术和软件工程管理。
软件开发技术包括:
软件开发方法学、开发过程、开发工具和软件工程环境,其主体容是软开发方法学。
软件工程管理包括:
软件管理学、软件工程经济学、软件心理学等容。
37、关系模型的完整性规那么是对关系的某种约束条件,包括实体完整性、______和自定义完整性。
参照完整性
关系模型允许定义三类数据约束,它们是实体完整性、参照完整性以与用户定义的完整性约束,其中前两种完整性约束由关系数据库系统自动支持。
实体完整性约束要求关系的主键中属性值不能为空,这是数据库完整性的最根本要求,因为主键是惟一决定元组的,如为空那么其惟一性就成为不可能的了。
参照完整性约束是关系之间相关联的根本约束,它不允许关系引用不存在的元组:
即在关系中的外键要么是所关联关系中实际存在的元组,要么是空值。
自定义完整性是针对具体数据环境与应用环境由用户具体设置的约束,它反映了具体应用中数据的语义要求。
38、数据模型按不同的应用层次分为三种类型,它们是______数据模型、逻辑数据模型和物理数据模型。
概念
数据模型按不同的应用层次分为三种类型,它们是概念数据模型、逻辑数据模型和物理数据模型。
概念数据模型简称概念模型,它是一种面向客观世界、面向用户的模型;
它与具体的数据库管理系统无关。
逻辑数据模型又称数据模型,它是一种面向数据库系统的模型,该模型着重于在数据库系统一级的实现。
物理数据模型又称物理模型,它是一种面向计算机物理表示的模型,此模型给出了数据模型在计算机上物理结构的表示。
39、与结构化需求分析方法相对应的是______方法。
结构化设计
与结构化需求分析方法相对应的是结构化设计方法。
结构化设计就是采用最正确的可能方法设计系统的各个组成局部以与各个成分之间的部联系的技术。
也就是说,结构化设计是这样一个过程,它决定用哪些方法把哪些局部联系起来,才能解决好某个具体且有清楚定义的问题。
40、数据结构包括数据的______结构和数据的存储结构。
逻辑
数据结构是指带有结构的数据元素的集合。
它包括数据的逻辑结构和数据的存储结构。
数据的逻辑结构是指反映数据元素之间逻辑关系的数据结构。
数据的存储结构是指在计算机存储空间中的存放形式。
41、C++中,一个float类型的变量占______个字节。
4
此题考查的是根本变量类型的根本概念。
一个int类型变量占4个字节,一个float类型变量占4个字节,一个double类型的变量占8个字节。
42、执行以下语句段后程序的输出结果是______。
inta[]={1,2,3,4,5};
*(++pa)<
2
此题考查数组和指针的根本概念。
数组名实际上是数组第一个元素的地址。
对于此题pa=a,将a[0]的地址赋予pa,cout<
后pa便指向数组a的第二个元素。
所以输出2。
43、在一个类成员函数声明的前面加上______修饰,即把该函数声明为虚函数。
virtual
此题考查虚函数的声明。
在C++中,运行时的多态性通过虚函数来实现的,在成员函数的声明前面加上virtual,即把该函数声明为虚函数。
虚函数可以是另一个类的友元函数,但是不得是静态成员函数。
44、执行以下程序段以后程序的输出是______。
voidadd(int&
a)
a++;
intb=3;
add(b);
此题考查的是函数的调用和参数传递。
c++的参数传递包括传值与传地址两种。
前者是默认的参数传递方式。
如果调用函数时,须要改变实参或者返回多个值,就应该采用传地址方式。
传递指针属于显式的传地址方式,传递引用属于隐式的传地址方式。
此题采用的是传递引用,所以实参被改变。
45、模板形参分为两种类型:
虚拟类型参数和______参数。
常规
此题考查模板参数的一些概念。
模板形参分为虚拟类型参数和常规类型参数。
虚拟类型参数必须用typename或者class定义,对应的实参应该是double、int等具体的类型修饰符。
常规参数用具体的类型修饰符号〔如int、double〕定义,对于的实参必须是常量表达式。
46、表达式8&
3的结果是______。
相当于二进制1000和0011进展与运算,答案为0000〔即十进制的0〕。
47、重载的关系运算符和逻辑运算符返回值类型是______。
bool
此题考查的是运算符重载的一些概念。
C++把重载的运算符看做特殊的函数,称为运算符函数。
对于关系运算符和逻辑运算符的重载返回值类型应该是bool型的。
48、以下语句段的输出结果是______。
intk=1,n=10,m=1;
while(k<
=n)
m*=2;
n--;
m<
1024
此题考查根本的循环语句。
while循环是当型循环,此题的条件是k<
=n;
k的初始值为1,而每次循环都会执行n--,循环执行10次,故最后输出1024。
49、在c++中,每个类都有一个隐含的指针叫______指针。
this
此题考查的是this指针的根本概念。
c++提供了一个特殊的对象指针---this指针,它是成员函数所属对象的指针,指向当前类对象的地址。
50、定义字符指针char*s="
,sizeof(s)=4,那么strlen(s)=______。
5
此题考查的是字符串函数。
函数strlen〔字符指针〕,求的是字符指针所指向当前字符串的实际长度,不包括'
。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 全国 计算机等级考试 二级 c+ 题库 12 17