答 案
试题一
[问题1] 起点:读者文件 终点,登记读者信息或3
起点:处理查询请求或2
终点:读者文件
[问题2] 起点:图书目录文件 终点:图书信息查询或2.2
起点:借书文件 终点:读者信息查询或2.1
起点:借书文件 终点:图书信息查询或2.2
[问题3]
(1)[入库单|借书单|还书单|注销单]
(2)分类目录号+书名+作者+价格+数量+购书日期
试题二
[问题1]
Customers(cid,cname,adderss,cardnum),主码:cid
orders(Ordernum,Orderdate,cid) 主码:Ordernum ;外码:cid
Books<bid,title,author,qty_in_stock,year_publicshed,price),主码:bid
0rderlist(bid,ordernum,qty,ship_date) 其中bid和ordernum是主码 也是外码
注:以上四个关系模式和每个模式中的属性可按任意次序书写。
[问题2]
(1)PRIMARY KEY(cid)
(2)UNIQUE(cardnum)
注;(1)和(2)的次序可以颠倒。
[问属3](4分)
(3)not in
(4)c
(5)C.ordernum
试题三(共15分)
[问题1]
锁的编号、安全级别、锁的当前状态
[问题2]
(1)中断事件 (2)读取用户指纹 (3)读取用户开锁权限
(4)读取锁的安全级别 (5)判断用户是否有权限开锁或用户是否可以开锁
[问题3]
组装和聚集都表示实例之间的整体/部分关系。组装是聚集的一种形式。
聚集是概念性的,只是区分整体与部分。
组装具有很强的归属关系,而且整体与部分的对象生存周期是一致的。
或者回答:如果没有成分对象,组装对象也不存在;在任何时候,每个给定的成分对象只能是组装对象的组成部分。
试题四
[问题1]
(1)P(S1) (2)V(S2) (3)P(S2) (4)V(S1)
[问题2]
(5)1,表示允许同时对缓冲区进行写操作的进程数量(0.5分) (6)1,表示允许同时对缓冲区进行读操作的进程数量(0.5分)
解法1:P(SA)插入位置(b),V(SA)插入位置(f),P(SB)插入位置(h)(若将P(SB)插入位置 (g),则扣0.5分),V(SB)插入位置(k);
解法2:P(SB)插入位置(b),V(SB)插入位置(f),P(SA)插入位置(h)(若将P(SA)插入位置 (g),则扣0.5分),V(SA)插入位置(k);
|
进程A |
进程B |
t1 |
阻塞(等待I/0结束) |
运行 |
t2 |
阻塞(等待I/0结束) |
阻塞(等待R资源) |
t3 |
运行 |
阻塞(等待I/0结束) |
t4 |
就绪 |
运行 |
试题五
(1)indegree[p->adjvex]++,及其等价形式
(2)Stack [top--],及其等价形式
(3)indegree[p->adjvex]--,及其等价形式
(4)ve[w]+p->weight>ve[p->adjvex],及其等价形式
(5)ve[w),及其等价形式
试题六(共15分)
(1) private
(2) Configure *Configure::_inStance
(3) new Configure
(4) _inStance
(5) Configure::Instance()
试题七(共15分)
(1) try
(2) Exception e 或者:EmptyQueueException e,e是对象名,可用任意合法标识符替换(3分)
(3) throws EmptyQueueException
(4) throw (new EmptyQueueException())
(5) Exception