试题七(15分钟)
阅读以下说明和Visual Basic代码,将应填入 __(n)__ 处的字名写在答题纸的对应栏内。
[说明]
某绘图系统定义了一个抽象类IShape, 现有三个类CPoint,CLine和CCircle,它们都具有IShape界面。相应的类图关系如图7-1所示。
已知某第三方库已经提供了XCircle类,且完全满足CCircle图元显示时所需的功能。化码7-1是抽象类IShape类模块内容,代码7-2实现了类CCircle的IShape界面,并使用了XCircle提供的显示功能。
XCircle提供的显示功能方法接口为displayIt。
[图7-1]

[代码7-1]
Public Color As Long
Sub draw()
'方法体不包括可执行语句
End Sub
Sub move(stepx As Single,stepy As Single)
'方法体不包括可执行语句
End Sub
[代码7-2]
__(1)__
Private color As Long
… '其他定义省略
Private ridged As __(2)__
Private Sub Class_Initialize()
Set bridged= __(3)__
End Sub
Private Property __(4)__ ()As Long
IShape_Color=color
End Property
Private Property __(5)__ (ByVal newColor As Long)
Color=newColor
End Property
Private Sub IShape_draw() '使用XCircle提供的显示功能
__(6)__
End Sub
Private Sub IShape_move (stepx As Single,stepy As Single)
… '省略描述
End Sub
下午答案
试题一
[问题1]
(1)起点:学生住宿服务系统 终点:房主
数据流名:费用信息 或 交纳的费用 或费用
(2)起点:房屋文件 终点:查询房屋 或 4
[问题2]
房主文件 和 学生文件
[问题3]
姓名+现住址+电话号码+出生日期+性别
试题二
[问题1]
(1)主键:职员号 外键:部门号
(2)主键:部门号 ,或部门名 外键:负责人代码
[问题2]
(a) PRIMARY KEY
(b) FOREIGN KEY(部门号),REFERENCES 部门
(c) Count(*),Sum(月工资),Avg(月工资)
(d) GROUP by 部门号 HAVING count(*)
[问题3]
(1)该行不能插入"职员"关系,它违反了用户定义完整性中月工资的取值范围必须大于等于1000元,小于等于8000元。
(2)该行不能插入"职员"关系,因为职员号"60802"在表2-1中已存在,违反了实体完整性中主键必须唯一区分关系中的每一个属性。
(3)该行可以插入"职员"关系,尽管部门号、电话和办公室为空,但是它表示该职员没有分配到某个部门。
[问题4]
"职员"关系模式主要的问题是:
数据冗余问题。因为某部门的职员人数有多少,其办公室和电话将要重复存入多少。
数据修改不一致问题。因为某部门的办公室变了可能会导致某些职员的修改了,某些职员的未修改。
将关系模式修改为:职员(职员号,职员姓名,月工资,部门号)
部门(部门号,部门名,负责人代码,任职时间,办公室,电话)
试题三
(1) [i] 或 i
(2) [c] 或 c
(3) [d] 或 d
(4) [a] 或 a
(5) [h] 或 h
试题四
(1) k%26gt;=N 或 k= =N
(2) cose + c[k][i] %26lt; mincost
(3) i
(4) k+1
(5) worker[i] = 0
试题五
(1) Shape
(2) Xcircle
(3) DisplayIt()
(4) Shape *
(5) getShapeInstance(type)
(6) delete s
试题六
(1) implements Shape
(2) XCircle
(3) XCircle()
(4) displayIt()
(5) Shape
(6) getShapeInstance(type)
试题七
(1) Implements IShape
(2) XCircle
(3) New XCircle
(4) Get IShape_Color
(5) Let Ishape_Color
(6) bridged.displayIt