重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
找答案首页 > 全部分类 > 计算机类考试
搜题
网友您好, 请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
[主观题]

阅读下列说明,回答问题1至问题3。【说明】 请设计一个图书馆数据库,此数据库中对每个借阅者保存的读

阅读下列说明,回答问题1至问题3。

【说明】

请设计一个图书馆数据库,此数据库中对每个借阅者保存的读者记录包括:读者号、姓名、地址、性别、年龄、单位。对每本书存有:书号、书名、作者、出版社。对每本书被借出的书存有读者号、借出日期和应还日期。

阅读下列说明,回答问题1至问题3。【说明】 请设计一个图书馆数据库,此数据库中对每个借阅者保存的读阅

【问题1】

给出E-R图

【问题2】

转换成关系模型

【问题3】

给其中任何一个表用SQL语句建表。

查看答案
更多“阅读下列说明,回答问题1至问题3。【说明】 请设计一个图书馆数据库,此数据库中对每个借阅者保存的读”相关的问题

第1题

阅读以下说明和C++码,填入(n)处。[说明] 下面代码实现类A、B、C、D的继承定义和应用。仔细阅读[代码5-

阅读以下说明和C++码,填入(n)处。

[说明]

下面代码实现类A、B、C、D的继承定义和应用。仔细阅读[代码5-1],在(n)处写出正确的运行结果。

[代码5-1]

include<iostream.h>

class A {

public:

int a;

A (int v1): a(v1) {} //构造函数

void disp ( )

{

cout<<"a in class A="<<a<<endl;

}

};

class B: virtual public A {

public:

int b;

B (int v1,int v2): A(v1),b v2) {} //构造函数

void disp ( )

{

cout<<"a in class B="<<a<<endl

cout<<"b in class B="<<b<<endl;

}

};

class C: virtual public A {

public:

int c;

C (int v1,int v2): A(v1) ,c(v2) {} //构造函数

void disp ( )

{

cout<<"a in class C="<<a<<endl;

cout<<"c in class C="<<c<<endl;

}

};

class D: public B, public C {

public:

int d;

D (int v1,int v2,int v3,int v4 ): A(v1) ,B(v1,v2) ,C(v1,v3),d(v4) {} //构造函数

void disp ( )

{

cout<<"a="<<a<<endl;

cout<<"b="<< b<<endl;

cout<<"c="<<c<<endl;

cout<<"d="<<d<<endl;

}

};

void main( )

{

D demo (10,20,30,40);

demo.disp ( );

}

[运行结果]

a=(1)

b=(2)

c=(3)

d=(4)

点击查看答案

第2题

若用Student表存储学生信息,Teacher表存储教师信息,Course表存储课程信息,Study表存储学生选修课

程情况。教务处想要“查询2006年入学的计算机专业(CS)的学生中平均成绩在85分以上的学生信息”。请将以下SQL语句补充完整。注:用对应英文表示。

SELECT *FROM Student WHERE Smajor="CS" AND Syear="2006"

AND(1))

(SELECT Sno FROM Study GROUP BY Sno

HAVING(2))

点击查看答案

第3题

阅读以下说明和图,回答问题,将答案写在对应栏内。【说明】 银行客户需要从ATM取100元,他向ATM的读卡

阅读以下说明和图,回答问题,将答案写在对应栏内。

【说明】

银行客户需要从ATM取100元,他向ATM的读卡机插卡,读卡机读取他的卡号,然后ATM屏幕初始化,ATM提示输入密码,客户输入密码(123456),ATM打开他的账户,密码有效,因此ATM提示选择事务,客户选择取钱,ATM提示输入金额,客户输入100元,ATM验证账户上有足够的钱,就从账上减去100元,ATM吐出100元,并退出的卡。

【问题】

根据上面的描述,在下面填写,完成未完成的协作图。

1.插卡(客户一读卡机)

2._(____→____)

3._(____→____)

4.提示输入PIN (123456) (ATM 显示屏→客户)

5._(____→____)

6._(____→____)

7.验证PIN(__→__)

8.提示选择事务(__→__)

9._(客户→ATM屏幕)

10.提示金额(ATM屏幕→客户)

11.输入金额(客户→ATM屏幕)

12.取钱(ATM屏幕→的账户)

13._(____→____)

14._(____→____)

15._(____→____)

16.提供收据(客户的账户→取钱机)

17._(____→____)

点击查看答案

第4题

阅读以下说明,回答问题1至问题3,将答案写在对应栏内。【说明】 在一个航空公司的航班管理系统中,有

阅读以下说明,回答问题1至问题3,将答案写在对应栏内。

【说明】

在一个航空公司的航班管理系统中,有以下一些事实。

(1)一个航班可能是一个或多个乘客的运输工具,每个乘客可能是一个或多个航班的旅客。

(2)一个且仅一个飞行员必须对每个航班负责,每个飞行员可能负责一个或多个航班。

(3)一个或多个飞行员必须对每个乘客负责,每个飞行员必须对一个或多个乘客负责。

现有飞行员的实体如下:

飞行员(飞行员编号,航班编号,姓名,工资,起飞地,到达地,飞行信用时间)

说明:飞行信用时间是一个特定的航班分配给一名飞行员,授权他可以驾驶管理这个航班。

【问题1】

实体“飞行员”是否符合1NF,如果不符合,如何将它规范化。

【问题2】

由问题1得到的实体“飞行员”是否符合2NF,如果不符合,如何将它规范化。

【问题3】

指出最后得到关系模式的候选码。

点击查看答案

第5题

阅读以下说明和JAVA 2代码,填入(n)处。[说明] 以下程序实现了利用鼠标任意移动圆形的位置,仔细阅

阅读以下说明和JAVA 2代码,填入(n)处。

[说明]

以下程序实现了利用鼠标任意移动圆形的位置,仔细阅读代码和相关注释,将程序补充完整。

[代码6-1]

import java.awt.*;

import java.awt.event.*;

public class CIUSAMPLE extends Frame. implements MouseMotionListener, MouseListener

{

static CIUSAMPLE frm=new CIUSAMPLE ( );

int x=70,y=60,posX=70,posY=60,dx,dy;

public static void main (String args[])

{

frm.setTitle ("Dragging a circle");

frm.setSize (200,150);

(1)

ffm.addMouseMotionListener (frm);

frm.setVisible (true);

}

public void mousePressed (MouseEvent e)

{

(2)

dy=e.getY ( ) -posY;

}

public void mouseDragged (MouseEvent e)

{

(3)

y=e.getY ( ) -dy;

if(dx>0&&dx<50&&dy>0&&dy<50) //如果指针落在正方形区域内

{

Graphicsg=getGraphics ( );

(4)

}

}

public void paint (Graphics g)

{

g.setColor (Color.pink); //设置绘图颜色为粉红

g.fillOval(x,y,50,50); //以基准点为图形在左上角绘出圆形

(5)

posY=y;

}

public void mouseMoved (MouseEvent e) {}

public void mouseReleased (MouseEvent e) {}

public void mouseEntered (MouseEvent e) {}

public void mouseExited (MouseEvent e) {}

public void mouseClicked (MouseEvent e) {}

}

点击查看答案

第6题

阅读以下说明和C++码,填入(n)处。 [说明] 建立一个分数类,使之具有下述功能:建立构造函数,它能防

阅读以下说明和C++码,填入(n)处。

[说明]

建立一个分数类,使之具有下述功能:建立构造函数,它能防止分母为0,当分数不是最简形式时进行约分以及避免分母为负数。

[C++代码]

include<iostream.h>

include<math.h>

class Num

{

public:

Num (int a,int b);

private:

int num1;

int num2;

}:

Num:: Num (int a,int b)

{

if( (1) )

{

cout<<"ERROR"<<endl;

return;

}

int min=fabs(a)<fabs (b)?fabs (a): fabs (b);

int x=1;

for (int i=1;i<=min;i++)

if( (2) )

x=i;

a/=X;

b/=x;

if( (3) )

{

a=-a;

b=-b;

}

(4)

(5)

}

点击查看答案

第7题

阅读以下预备知识、函数说明和C代码,将应填入(n)处的字句写在对应栏内。 [预备知识] ①对给定的字符

阅读以下预备知识、函数说明和C代码,将应填入(n)处的字句写在对应栏内。

[预备知识]

①对给定的字符集合及相应的权值,采用哈夫曼算法构造最优二叉树,并用结构数组存储最优二叉树。例如,给定字符集合{a,b,c,d}及其权值2、7、4、5,可构造如图3所示的最优二叉树和相应的结构数组Ht(数组元素Ht[0]不用)(见表5)。

结构数组HT的类型定义如下:

define MAXLEAFNUM 20

struct node {

char ch; / * 当前结点表示的字符,对于非叶子结点,此域不用*/

int weight; / * 当前结点的权值*/

int parent; / * 当前结点的父结点的下标,为0时表示无父结点*/

int Ichild, rchild

/ *当前结点的左、右孩子结点的下标,为0时表示无对应的孩子结点* /

} Ht[2 * MAXLEAFNUM];

②用'0'或'1'标识最优二叉树中分支的规则是:从一个结点进入其左(右)孩子结点,就用'0'('1')标识该分支(示例如图3所示)。

③若用上述规则标识最优二叉树的每条分支后,从根结点开始到叶子结点为止,按经过分支的次序,将相应标识依次排列,可得到由'0'、'1'组成的一个序列,称此序列为该叶子结点的前缀编码。如图3所示的叶子结点a、b、c、d的前缀编码分别是110、0、111、10。

【函数5.1说明】

函数void LeafCode (int root, int n)的功能是:采用非递归方法,遍历最优二叉树的全部叶子结点,为所有的叶子结点构造前缀编码。其中形参root为最优二叉树的根结点下标;形参 n为叶子结点个数。

在构造过程中,将Ht[p]. weight域用作被遍历结点的遍历状态标志。

【函数5.1】

char * * Hc;

void LeafCode (int root, int n)

{/*为最优二叉树中的n个叶子结点构造前缀编码,root是树的根结点下标* /

int i,p = root,cdlen =0;char code[20];

Hc=(char* * )malloc(.(n +]) *sizeof(char* )); /* 申请字符指针数组* /

for(i=1;i< =p;++i)

Ht[ i]. weight =0;/* 遍历最优二叉树时用作被遍历结点的状态标志*/

while(p) {/*以非递归方法遍历最优二叉树,求树中每个叶子结点的编码*/

if(Ht[p], weight ==0) { /*向左*/

Ht[ p]. weight =1

if (Ht[p],lchild !=0) { p=Ht[P].lchild; code[cdlen++] ='0';]

else if (Ht[p]. rchild ==0) {/* 若是叶子结点,则保存其前缀编码*/

Hc[p] = ( char * ) malloc( (cdlen + 1 ) * sizeof (char) );

(1); strcpy(He[ p] ,code);

}

}

else if (Ht[ pi, weight == 1) { /*向右*/

Ht[p]. weight =2;

if(Ht[p].rchild !=0) {p=Ht[p].rchild; code[cdlen++] ='1';}

}

else{/* Ht[p]. weight ==2,回退*/

Ht[p]. weight =0;

p=(2);(3); /*退回父结点*/

}

}/* while结束* /

}

【函数5.2说明】

函数void Decode(char*buff, int root)的功能是:将前缀编码序列翻译成叶子结点的字符序列并输出。其中形参root为最优二叉树的根结点下标;形参buff指向前缀编码序列。

【函数5.2】

void Decode( char * buff, int root)

Iint pre =root,p;

while ( * buff! = '\0') {

p = root;

while (p!=0){/*存在下标为p的结点*/

pre=p;

if((4))p=Ht[p].lchild; /*进入左子树*/

else p = Ht[p]. rchild; / *进入右子树*./

buff ++; / * 指向前缀编码序列的下一个字符* /

}

(5);

printf("%c", Ht [ pre]. ch);

}

}

点击查看答案

第8题

阅读以下函数说明和Java代码,将应填入(n)处的字句写在对应栏内。 [说明] 很多时候,希望某些类只

阅读以下函数说明和Java代码,将应填入(n)处的字句写在对应栏内。

[说明]

很多时候,希望某些类只有一个或有限的几个实例,典型解决方案是所谓单身(Singleton)模式。但在多线程情况下,Singleton模式有可能出现问题,需要进行同步检查。如果对“检查singleton对象是否已经创建”进行同步,则存在严重的瓶颈,所有的线程都必须等待检查对象是否存在。解决方式是一种称为Double-Checked-Locking模式,其意图是将非必须的锁定优化掉,同步检查最多只发生一次,因此不会成为瓶颈。以下是Java语言实现,能够正确编译通过。

[Java代码]

public class USTax {

private static USTax instance=null;

(1) USTax(){}

private (2) static void doSync(){

if(instance==null){

System.out.println("实例不存在,创建实例..");

instance=(3);

System.out.println("实例创建成功");

}else{

System.out.println("实例已被创建了");

}

}

public static USTax getInstance(){

if(instance==null){

System.out.println("实例暂时不存在");

(4);//同步控制

}else{

System.out.println("实例已经存在");

}

return (5);

}

}

(1)

点击查看答案

第9题

根据题意,用题中及类图中提供的术语指出图3-3所示的打电话序列图中的消息(A)~(D)。

点击查看答案

第10题

求解“背包问题”常用的方法有哪几种?各有什么样的特点?

点击查看答案
下载上学吧APP
客服
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
选择优惠券
优惠券
请选择
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)
订单号:
遇到问题请联系在线客服
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注上学吧 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注上学吧 -
请用微信扫码测试
选择优惠券
确认选择
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,如果您知道正确答案,欢迎您来纠错

上学吧找答案