(全卷满分为50分,答案请写在答卷纸上)
一、选择题。下面每一道题都有A、B、C、D四个备选答案,请把合适的答案,写在答题纸上(每题1.5分,共24分)
1、关于类的实例化的描述中,正确的是______(1)______。
A.同一个类的对象具有不同的静态数据成员值
B.不同的类的对象具有相同的静态数据成员值
C.同一个类的对象具有不同的对象自身引用(this)值
D.同一个类的对象具有相同的对象自身引用(this)值
2、下面的主程序中,实参a与形象x以引用调用(call by value)与形参y以值调用(call by value)的方式传递信息******后a和b的值分别是______(2)_______。
Main program procedure compute(x*****
a:=1; x:=x+2*y;
b:=2; y:=2*x+y;
compute(a,b ) return;
A.5和2
B. 5和12
C. 1和2
D. 1和12
3、下列题目3-7题(C语言版)和8-12题(JAVA版)为何选试***者8-12题。如果题目解答没有遵照说明,则C语言版答题有*****
C语言版(3-7题)
以下不合法的用户标识符是_____(3)_____
(3)A. f2_G3 B. If C. 4d
4、有以下程序:
main()
{ int t, a=2, b=3, c=-2;
While (a>b>c)
{ t=2; a=b; b=t; c++; }
rintf (“%d, %d, %d”, a,b,c);
序的输出结果是______(4)_______
A.2,3,0
B.3,2,0
C.3,2,-**
___(12)____是面向对象程序设计语言不同于其他语言的*****类之间自动地共享数据和方法的一种机制。
(12)A、继承性B、消息传递C、多态性D、静态联编
(13)A、调用B、引用C、消息传递D、继承
安全机制是实现安全服务的技术手段,一种安全机制可以提供多种安全服务,而安全服务也可采用多种安全机制。加密机制不能提供的安全服务是____(14)____。
(14)A、数据保密性B、访问控制C、数字签名D、认证
二、填空题(每空一分,共9分,答案写在答题纸)
1、从静态的观点看,操作系统中的进程是由程序段,数据和____________三部分组成。
2、数据库的数据模型应包含数据结构、数据操作和完整性约束三个部分。其中数据操作指对数据库的___________和_____________两大类操作。
3、已知二叉树的前序遍历序列和中序遍历列为:
前序序列:ABCDEFG
中序序列:CBEDAFG
则此二叉树的后序遍历序列为___________________。
4、面向对象三个最核心的概念包括:封装、继承和____________。
5、下列文字描述了调用C++虚成员函数的技术细节,请在空白处填写上适当的英文单词。
The memory image of an instance of a class has one pointer to the VTABLE of this class,stored in front of the actual date members of the object.Thus an object that was virtual functions occupies 4 additional bytes for each instance .The VTABLE itself occpies 4 bytes for each [ ①] function ,but there is only one VTABLE per class and it is shared by all [ ②].When you invoke a [ ①]function from a base class,the pointer to the [ ③] of the class from the first 4 bytes of the objects instance date.Each virtual function has a unique index in the vtale of a given class.The comliler simplyobtains the function address from the VTABLE an the base class,the technique is the same.
6、在UNIX系统中,创建一个子进程的方法是系统调用____________。
三、问答题(1-5题每题3分,第6题5分,共20分,答案写在答题纸)
1、从软件开发的角度看,数据库的索引有哪几种传统的实现方式?指出其使用的数据结构。
2、基于TCP/IP协议的网络通讯接口有哪几个底层函数?请列出你所知道的,列出函数名或文字描述清楚即可。
3、有一表EMPLOYEE_DEPARTMENT和它的样例数据如下:
EMPNO FIRSTNAME LASTNAME WORKDEPT DEPTNAME
000290 John Parker E11 Operations
000320 Ramlal Mehta E21 SoftwareSupport
000310 Maude Setright E11 Operations
其中:EMPNO为主关键字,表示雇员号,FIRSTNAME为雇员名,LAST为雇员性,WORKDEPT 为雇员所在部门号,DEPTNAME为雇员所在部门名称。
该表是否符合第三范式的要求?如果你认为不符合,请按本题中描述表和样例数据的格式给
出你认为符合第三范式的设计
4、把内存中一块数据移动到另一个指定位置。不要使用任何已实现该功能的运行函数。请用文字描述算法实现的方式。
5、请简单描述MVC设计模式及其带来的优点。
6、请简单描述一下您所了解的软件开发过程及其优缺点。
抽象类A及类B的定义如下
Abstract class A
{
Abstract int getinfo() {}
}
public class B extends A
{
Private int a=0;
Public int getinfo()
{
Return a;
}
public static void main (String args[])
{
B b=new B();
System.out println (b.getinfo());
}
}
关于上述程序代码的说明正确的是________(12)_______
(12) A.第1行不能通过编译
B.第3行不能通过编译
C.程序通过编译,输出结果为:0
D.程序通过编译,但没有输出任何结果
将两个表联接在一起时,下面哪一项通常是另一个******
A.外键
B.主键
C.总控键
D.重复的组
以下语句出错,哪种改动能够正确执行_____(14)_______
SELECT deptno , max(sal)
FROM emp
GROUP BY deptno
WHERE max(sal)>2500;
A.将WHERE 和GROUP BY 语句顺序调换一下
B.将WHERE max(sal)>2500 语句改成HAVING max(sal)*****
C.将WHERE max(sal)>2500 语句改成WHERE sal>2500*****
D.将WHERE max(sal)>2500 语句改成HAVING sal>2500****
删除emp表的全部数据,但不提交,以下正确的语句是_______(15)_______
A.DELETE * FROM EMP
B.DELETE FROM EMP
C.TRUNCATE TABLE EMP
D.DELETE TABLE EMP
当一个用户修改了表的数据,那么______(16)______
A.第二个用户立即能够看到数据的变化
B.第二个用户必须执行ROLLBACK命令后才能看*****
C.第二个用户必须执行COMMIT命令后才能看到********
D.第二个用户因为会话不同,暂时不能看到数据的*********
使用UPDATE命令最多可以修改_____(17)______个记*******
表的主键特点中,说法错误的是____(18)_________
A.一个表只能定义一个主键
B.主键可以定义在表级或列级
C.主键的每一列都必须非空
D.主键的每一列都必须惟一
下面有关表和视图的叙述中错误的是____(19)_______
A.视图的数据可以来自多个表
B.对视图的数据修改最终传递到基表
C.基表不存在,不能创建视图
D.删除视图不会影响基表的数据
下面哪一个SQL语句将删除DEPT表中的所有数*****______(20)______
A.DROP TABLE dept
B.DELETE TABLE dept
C.TRUNCATE TABLE dept
D.DELETE *.* FROM DEPT;[END CODE]
关于索引,说法错误的是______(21)______
试题二(C++版)
阅读以下说明和C++码,将应填入_____(n)_____处的字名卸载答题纸的对应栏内*** [说明]
某绘图系统存在Point 、Line、Square 三种图元,它们具有Shape接口,图****系如图2-1所示。现要将Circle图元加入此绘图系统以实现功能扩充。已知某****经提供了Xcircle 不是由Shape派生而来,它提供了接口不被系统直接使用**** 既使用了Xcircle又遵循了Shape规定的接口,即避免了从头开发一个新的Circle ****可以不修改绘图系统中已经定义的接口。代码2-2根据用户指定的参数生成特*****例,并对之进行显示操作。
Class Factory {
Publie:
_____(30)____ getShapeInstance (int type ){ //生成特定类实例
Switch(type){
case 0: returnnewPont;
case 1: return new Rectangle;
case 2: return new Line;
case 3: return new Circle;
default : return NULL;
}
}
Void main (int argc,char *argv[]){
If (argc !=2){
Cout<<”error parameters !” < Return; } Int type=atoi(argv[1]); Factory factory; Shape *s; S=factory. ____(31)___; If(s==NULL){ Cout<<”Error get the instance!”< Return; } s->display(); delete s; return; } 供选择的答案: (27)A. Shape B.XCircle C.Point D.Square (28)A. Shape B.XCircle C.Point D.Square (29)A. display() B.DisplayIt() C.Shape.display() D.Xcircle.*** (30)A. Shape B. Shape * C. XCircle D. Xcircle * (31)A. getShapeInstance(type) B. getShapeInstance() C. display() D. ******* 请用标准SQL语句回答下面问题: 1、为保证特征Czhogn 要求的完整性(不会重复),有一种实现方法是建*****写出语句。 2、列出账户号为”001”的客户的人民币存款余额合计。 内容:余额 3、列出分行编号为”7501”的分行下全部账户人民币存款情况。 内容:网店编号,账户号,余额 其中余额是该账户号的人民币存款余额合计。 from ACC_BLAV where BRNNUM =(select BRNNUM from BRNNUM where BANKNO=’7501’) 请将其改写为不用嵌套的SQL语句,要求结果完全一样。 列出分行编号为‘7501’的分行下全部账户存款情况。 内容:网点编号,账户号,余额 其中余额是该账户号的各币种存款余额都折成人民币后的余额。 假设在前面表结果和说明基础上,还有一张交易表ACC_******程要对ACC_TRAN表做插入操作,和对ACC_BLAV做更****SQL流程,完成此笔交易,不必写出更新和插入细节,更新******即可。 若用8位机器码表示十进制数-101,补码表示的形式为_____(1)________。 (1)A.11100101 B.10011011 C.11010101 D.11100111 _____(2)______是解决进程间同步和互斥的一对低级通讯原语。 A.LOCK和UNLOCK B.P.V操作 C.Wait和Signal D.Send和Receive 重载函数在调用选择的依据中,错误的是_____(3)______ A.函数的参数 B.参数的类型 C.函数的名字 D.函数的类型 软件测试的目的是_____(4)______ A.证明软件系统中存在错误 B.找出软件系统中存在的所有错误 C.尽可能多地发现软件系统中的错误和缺陷 D.证明软件的正确性 设仅包含根结点的二叉树的高度是0,则高度为5的二叉树的最大结点是_____(5)______ A.64 B.65 C.63 D.62 从未排序序列中依次取出一个元素与已排序序列中的元素依次进******已排列的合适位置。该排序方法称为_____(6)______排序法。 通过关系数据库的_____(7)______运算,可以从表1和表2获得表3******* 设有一个关系Student(学号,**********学生学号、姓名及平均成绩的select预警应该是Seect 学号,姓名。AVG(成绩) AS 平均成绩 From Student GROUP BY ___(8)_____ HAVING___(9)_____ (8)A.学号 B.姓名 C.系名 D.课程号 (9)A.COUNT(DISTINCT 学号)>3 B.COUNT(课程号)>3 C.COUNT(DISTINCT 学号)>=3 D.COUNT(课程号)>=3 一个类型为long的变量有4个字节,这4个字节在内存中的排列顺序是_____(10)_____ A.高位在前,地位在后 B.地位在前,高位在后 C.取决于操作系统 D.取决于CPU类型 编制一个好的程序首先要确保它的正确性和可靠性,除此以外,通常_____(11)_____。 供选择的答案 (11)A.易使用性、易维护性和效率 B. 易使用性、易维护性和易移植性 C.易使用性、易测试性和易修改性 D.易理解性、安全性和效率 _____(12)_____是面向对象程序设计语言不同于其他语言的主要特点。_____(13)_____*******类之间自动地共享数据和方法的一种机制。 (12)A.继承性 B.消息传递 C.多态性 D.静态联编 (13)A.调用 B.引用 C.消息传递 D.继承 安全机制是实现安全服务的技术手段,一种安全机制可以提供多种安全服务,安全服务也可采用多种安全机制。加密机制不能提供的安全服务是_____(14)_____。 (14)A.数据保密性 B.访问控制 C.数字签名 D.认证