第1题 设有二元关系R和三元关系S,下列运算中合法的是 ( )。
A.R∩S B.R∪S C.R-S D.R×S
【答案】:D
【参考解析】:在并(∪)、交(∩)、差(—)三种运算中,都要求参加运算的两个关系具有相同的属性名表,其运算结果也与它们具有相同的属性名。即它们的表框架是相同的。由此可以看出,本题给出的两个关系R与S格框架足不同的(R是二元关系,S三元关系),因此,它们不能作并(∪)、 交(∩)、差(—)这三种运算。而两个不同框架的关系是可以作笛卡尔积(×)运算的。
第2题 以下对C/C++语言函数的描述中,正确的是( )。
A.C程序由一个或一个以上的函数组成
B.C函数既可以嵌套定义又可以递归调用
C.函数必须有返回值,否则不能使用函数
D.C++程序中调用关系的所有函数必须放在同一个程序文件中
【答案】:A
【参考解析】:C语言的基本单位是函数,本题考察的就是函数的基本涵义及其使用。
第3题 下列叙述中正确的是( )。
A.软件就是程序清单 B.软件就是存放在计算机中的文件 C.软件应包括程序清单以及运行结果 D.软件包括程序和文档
【答案】:D
【参考解析】:软件应包括程序和文档。
第4题 下列叙述中正确的是( )。
A)在模块化程序设计中,一个模块应尽量多的包括与其他模块联系的信息
B)在自顶向下、逐步细化的设计过程中,首先应设计解决问题的每一个细节
C)在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则
D)在程序设计过程中,不能同时采用结构化程序设计方法与模块化程序设计方法
【答案】:C
【参考解析】:在模块化设计中,要求将一个大程序按人们能理解的大小规模进行分解,使每个模块都 能易于理解,各模块的功能尽量单一,各模块之间的联系尽量的少。因此,选项A中的说法是错误的。 自顶向下、逐步细化的设计过程,主要包括两个方面:一是将一个复杂问题的解法分解和细化成由若 干模块组成的层次结构;二是将一个模块的功能逐步分解细化为一系列的处理步骤,直到某种程序 设计语言的语句或某种机器指令。即在自顶向下、逐步细化的设计过程中。是按照先全局后局部、先 整体后细节、先抽象后具体的方法设计程序。因此,选项B中的说法也是错误的。 在模块化程序设计中,每一个模块完成一个功能,相对独立,要求一个模块内部的控制结构也要符合 结构化原则。因此,选项C中的说法是正确的。由于在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则,因此,在程序设计过程中,结构化程序设计方法与模块化程序设计方法是要同时采用的。因此,选项D中的说法是错误的。
第5题 若已定义int a[]={1,2,3,4,5,6,7,8,9,10),*p=a,i=5; 则对数组元素的不正确的引用是( )。
A.a[p-a] B.*(&a[i]) C.p[i] D.*(*(a+i))
【答案】:D
【参考解析】:数组和指针的关系非常密切,因为数组名称单独使用是表示数组的首地址c故可用的 表示可能是a[i]。p[i],*(p+i),同样,&a[i]表示地址,因此*&a[i]等同于a[i]。本题答案为D。
第1题 以下关于虚函数的叙述中不正确的是( )。
A.虚函数属于成员函数 B.虚函数不允许说明成静态的 C.凡是虚函数必须用virtual说明 D.虚函数可以被继承
【您的答案】:C
【参考解析】:虚函数的引入是为了解决动态绑定问题。使类的实例表现出多态性,虚函数在继承后依然保持虚函数特性,此时不需要用virtual关键词修饰。
第2题 下述说法错误的是( )。
A.对象之间不可以相互赋值 B.对象可以用作函数参数 C.对象可以用作数组的元素 D.对象可以用作另一对象的成员
【您的答案】:A
【参考解析】:如果重载了赋值运算符后,对象之间是可以赋值的,对象如C++中其他内置的数据类型一样,可以作为函数参数、数组元素,其他对象的成员存在。
第3题 假定AB为一个类,则执行AB x;语句时将自动调用该类的( )。考试通
A.有参构造函数 B.无参构造函数 C.拷贝构造函数 D.赋值重载函数
【您的答案】:B
【参考解析】:当没有显式调用指定形式的构造函数。系统自动调用无参构造函数,如果没有为类指定此构造函数,则系统自动为其生成一个最简单的无参构造函数。
第4题 数据库概念设计中,由分散到集中的设计方法是( )。
A.视图设计 B.视图集成设计 C.集中式模式设计 D.分数式模式设计
【您的答案】:B
【参考解析】:数据库概念设计中,由分散到集中的设计方法是视图集成设计。
第5题 类的构造函数的作用是( )。
A.一般成员函数 B.类的初始化 C.对象的初始化 D.删除对象创建的所有对象
【您的答案】:C
【参考解析】:本题考查类的构造函数的作用,构造函数一般负责完成对象建立时的初始化工作,如资源的分配。