问答题[说明]在线会议审分稿系统(OnlineReviewingSystem,ORs)主要处理会议前期的投稿和审稿事务,其功能描述如下。(1)用户在初始使用系统时,必须在系统中注册(Register)成为作者或审稿人。(2)作者登录(Login)后提交稿件和浏览稿件审阅结果。提交稿件必须在规定提交时间范围内,其过程为先输入标题和摘要、选择稿件所属主题类型、选择稿件所在位置(存储位置)。上述几步若未完成,则重复;若完成,则上传稿件至数据库中,系统发送通知。(3)审稿人登录后可设置兴趣领域、审阅稿件给出意见以及罗列录用和(或)拒绝的稿件。(4)会议委员会主席是一个特殊审稿人,可以浏览提交的稿件、给审稿人分配稿件、罗列录用和(或)拒绝的稿件及关闭审稿过程。其中关闭审稿过程需包括罗列录用和(或)拒绝的稿件。系统采用面向对象方法开发,使用UML进行建模。在建模用例图时,常用的方式是先识别参与者,然后确定参与者如何使用系统来确定用例,每个用例可以构造一个活动图。参与者名称、用例名称和活动名称分别参见表1~表3。系统的部分用例图和提交稿件过程的活动图分别如图1和图2所示。
问答题某高校欲开发一个成绩管理系统。记录并管理所有选修课程的学生的平时成绩和考试成绩,其主要功能描述如下。(1)每门课程都由3~6个单元构成,每个单元结束后会进行一次测试,其成绩作为这门课程的平时成绩。课程结束后进行期末考试,其成绩作为这门课程的考试成绩。(2)学生的平时成绩和考试成绩均由每门课程的主讲教师上传给成绩管理系统。(3)在记录学生成绩之前,系统需要验证这些成绩是否有效。首先,根据学生信息文件来确认该学生是否选修这门课程,若没有,那么这些成绩是无效的;如果他的确选修了这门课程,再根据课程信息文件和课程单元信息文件来验证平时成绩是否与这门课程所包含的单元相对应,如果是,那么这些成绩是有效的,否则无效。(4)对于有效成绩,系统将其保存在课程成绩文件中。对于无效成绩,系统会单独将其保存在无效成绩文件中,并将详细情况提交给教务处。在教务处没有给出具体处理意见之前,系统不会处理这些成绩。(5)若一门课程的所有有效的平时成绩和考试成绩都已经被系统记录,系统会发送课程完成通知给教务处,告知该门课程的成绩已经齐全。教务处根据需要,请求系统生成相应的成绩列表,用来提交考试委员会审查。(6)在生成成绩列表之前,系统会生成一份成绩报告给主讲教师,以便核对是否存在错误。主讲教师须将核对之后的成绩报告退还系统。(7)根据主讲教师核对后的成绩报告,系统生成相应的成绩列表,递交考试委员会进行审查。考试委员会在审查之后,上交一份成绩审查结果给系统。对于所有通过审查的成绩,系统将会生成最终的成绩单,并通知每个选课学生。现采用结构化方法对这个系统进行分析与设计,得到如图1所示的项层数据流图和图2所示的0层数据流图。图1顶层数据流图图20层数据流图
问答题【问题2】
如果等级为r的房间每人每天的住宿费为RATE(r),RATE为数组。为使该算法在输出每个候选的房间号RM(J)后,再输出这批散客每天所需的总住宿费DAYRENT(J),流程图1的p所指框中的最后处应增加什么处理?
问答题问题:4.3 (5分)
根据C代码,字符串“BBABBCAC”的next数组元素值为(6)(直接写素值,之间用逗号隔开)。若主串为“AABBCBBABBCACCD”,子串为“BBABBCAC”,则函数Kmp的返回值是(7)。
问答题阅读以下标准书号校验码的技术说明和程序流程图,根据要求回答问题1至问题3。[说明]为实现图书的国际统一编码,便于实现计算机化的图书管理,每本正式出版的图书都印有国际标准书号。标准书号由“ISBN”、10个数字(0~9)组成,其格式如下。ISBN组号-出版者号-书名号-校验码其中,校验码是根据前面9个数字计算得到的,用于计算机自动校验。假设标准书号的10个数字依次是a(1),a(2),…,a(10),则校验码a(10)的设置应使S=10*a(1)+9*a(2)+8*a(3)+…+1*a(10)能被11整除。如果校验码a(10)应设置成10,则规定以“X”表示之。例如,《软件设计师考试考前冲刺预测卷及考点解析》的标准书号为:ISBN7-121-05027-5。第1段上的数字“7”是国际ISBN中心分配给中国ISBN中心管理的组号;第2段上的“121”表示电子工业出版社。标准书号的校验过程如图5-13所示,计算校验码的过程如图5-14所示。其中,Mod(S,11)表示S除以11得到的余数。
问答题[说明]
某营销企业拟开发一个销售管理系统,其主要功能描述如下。
(1)接受客户订单,检查库存货物是否满足订单要求。如果满足,进行供货处理,即修改库存记录文件,给库房开具备货单并且保留客户订单至订单记录文件;否则进行缺货处理,即将缺货记录单存入缺货记录文件。
(2)根据缺货记录文件进行缺货统计,将缺货通知单发给采购部门。
(3)根据采购部门提供的进货通知单进行进货处理,即修改库存记录文件,并从缺货记录文件中取出缺货订单进行供货处理。
(4)根据保留的客户订单进行销售统计,打印统计报表给经理。
现采用结构化方法对销售管理系统进行分析与设计,获得如图所示的顶层数据流图和如图2所示的0层数据流图。
问答题根据题意回答以下问题:
设某商业集团数据库中有3个实体集:一是“商店”实体集,属性有商店编号,商店名,地址等;二是“商品”实体集,属性有商品号,商品名,规格,单价等;三是“职工”实体集,属性有职工编号,姓名,性别,业绩等。商店与商品间存在“销售”联系,每个商店可以销售多种商品,每种商品也可以在多个商店和职工间存在“聘用”联系,每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和月薪。
问题:
1.请根据题意完善下面ER图。
2.将ER图转换成关系模型,并注明主键和外键。
3.请写出要查出员工“小李”在三月份的销售业绩的关系代数式。
问答题阅读以下某前台销售子系统的技术说明和UML图,根据要求回答问题1~问题4。
[说明]
某超市管理系统的前台销售子系统以最基本的方式处理销售业务。系统的功能需求如下:
①记录每种商品的编号、单价和现有数量; ②为顾客选购的商品计价、收费,并打印清单;
③帮助商家找出哪种商品将脱销,从而及时补充货源;
④随时按上级系统的要求报告当前的款货数量、增减商品的种类或修改商品定价;
⑤交接班时结算货款数目和商品数目。
每台收款机可以处理任何数目的销售事件,但一个销售事件只能由一台收款机处理。每个销售事件从收款机响应收款人员的指令开始,先向商品发送检索请求消息来查找将被出售的商品。如果该商品的数量少于下限,则向供货员发送缺货登记消息。每名供货员可以提供一种或多种商品,同一品牌的商品只能由一位供货员来提供。接着收款机发送计价和入账消息请求售出操作,再由销售事件发送记账消息给相应的账册,并控制流程返回收款机等待下一次销售操作。每本销售账册可以记录任何数目的销售事件,但一个销售事件只能由一本销售账册记录。
该销售子系统采用面向对象方法开发,系统中的类及类之间的关系用UML类图表示,图1-11是该系统类图中的一部分;系统的动态行为采用UML序列图表示,图1-12是销售事件部分的序列图。
问答题[说明]面是一个Applet程序,其功能是有2个按钮,分别为First和Second,以及一个Label控件。要求点击First时则能在Label中显示出Command:First,而点击Second时则能显示出Command:Second,要求只能使用重载一次actionPerfonned()方法。程序运行结果如图6所示。importjava.awt.*;importjava.awt.event.*;importjava.applet.*;/*<appletcede=exl_7,classwidth=800height=400></applet>*/publicclassex]_?extendsAppletimplementsActionListener{privateStringstr="ok";privateLabel|;privateButtonbtn;publicvoidinit(){{{U}}(1){{/U}}I=newLabel(str);I.reshape(10,10,150,30);add(I);{{U}}(2){{/U}}btn.reshape(10,50,60,20);{{U}}(3){{/U}}add(btn);btn=newButton("Second");btn.reshape(10,100,60,20);{{U}}(4){{/U}}btn,addActionListener(this);add(btn);}publicvoidactionPerformed(ActionEventae){str="Command:"+ae.getActionCommand(){{U}}(5){{/U}}ex1_7,html<HTML><HEAD><TITLE>ext_7</TITLE></HEAD><BODY><appletcode="ext?.class"width=800height=400></applet></BODY></HTML>
问答题【程序6说明】
本程序实现两个多项式的乘积运算。多项式的每一项由类Item描述,而多项式由类List描述。类List的成员函数有:
createList():创建按指数降序链接的多项式链表,以表示多项式。
reverseList():将多项式链表的表元链接顺序颠倒。
multiplyList(List L1,List L2):计算多项式L1和多项式L2的乘积多项式。
【程序6】
#include<iostream.h>
class List;
class |tem{
friend class List;
private:
double quot;
int exp;
|tem * next;
public:
|tem(double_quot,int_exp)
{{{U}} (1) {{/U}};}
};
class List {
private:
|tem * list;
public:
List(){list=NULL;}
void reverseList();
void multiplyList(List L1,List L2);
void createList();
};
void List::createList()
{ |tem * p,* u,*pre;
int exp;
doubte quot;
list=NULL;
while(1){
cout<<"输入多项式中的一项(系数、指数):"<<endl;
cin>>quot>>exp:
if(exp<0)break; //指数小于零,结束输入
if(quot==0)continue;
p=list;
while({{U}} (2) {{/U}}){ //查找插入点
pre=p;p=p->next;}
if(p!=NULL&&exp==p->exp) {p->quot+=quot;continue;}
u={{U}} (3) {{/U}};
if(p==list) list=u;
else pre->next=u;
u->next=p;}
}
void List::reverseList()
{ |tem*p,*u;
if(list==NULL)return;
p=list->next;list->next=NULL;
while(p!=NULL)}
u=p->next;p->next=list;
list=p;p=u;}
}
void List::multiplyList(List L1,List L2)
{|tem*pLI,*pL2,*u;
int k,maxExp;
double quot;
maxExp={{U}} (4) {{/U}};
L2.reverseList();list=NULL;
for(k=maxExp;k>=0;k--){
pL1=L1.list;
while(pL1!=NULL&&pL1->exp>k)pL1=pL1->next;
pL2=L2.list;
while(pL2!=NULL&&{{U}} (5) {{/U}}pL2=pL2->next;
quot=0.0;
while(pL1!=NULL&&pL2!=NULL){
if(pL1->exp+pL2->exp==k){
{{U}} (6) {{/U}};
pL1=pL1->next;pL2=pL2->next;
}else if(pL1->exp+pL2->exp>k) pL1=pL1->next;
else pL2=pL2->next;
}
if(quot!=0.0){
u=new |tem(quot,k);
u->next=list;list=u;}
}
reverseList(:);L2.reverseList():
}
void main()
{ ListL1,L2,L;
cout<<"创建第一个多项式链表/n";L1.createList();
cout<<"创建第二个多项式链表/n";L2.createList();
L.multiplyList(L1,L2);
}
问答题阅读下列说明和图,回答问题1至问题3,将解答填入对应栏内。[说明]某汽车数字仪表系统将完成下述功能:(1)通过模一数转换,实现传感器和微处理器的接口。(2)在发光二极管面板上显示数据。(3)指示速度(mph)、行驶里程、油耗(mpg)等。(4)指示加速或减速。以下是经分析得到的数据流图,有些地方有待填充,假定顶层数据流图是正确的。图1-1是顶层数据流图,图1-2是第0层数据流图,图1-3是第1层数据流图,其中A是加工1的细化图,B是加工2的细化图。图中,△sps表示转速sps的瞬时变化值,若△sps>0则汽车加速,△sps<0则减速,△sps=0则匀速。假定题中提供的顶层图是正确的,请回答下列问题。[图1-1][图1-2][图1-3]
问答题阅读以下关于项目工作管理系统的数据库设计说明,根据要求回答问题1~问题4。
[说明]
某软件开发公司,决定结合自身工作的需求开发设计本公司的项目工作管理系统,由郭工程师承担数据库的设计工作。公司项目管理的需求分析如下。
1.组织机构。该公司有多个部门,每个部门有多个职员、多个办公室,每个办公室有一部电话。当部门变更时更换新的部门代码。职员辞职后,若再次被聘用仍使用辞职前的代码。被聘用职员担任某职务,职务用职务代码来标识。职务分为:工程师、高级工程师、经理助理、经理等。职员的工资根据等级区分,共分为S、A、B、C、D
5个等级。一个职务对应某个等级,一个等级对应多个职务。职员月工资等于职员月工作时间(小时)乘以小时工资。职员的人事变动及职位变更(升级、降级)在月初进行。
2.项目管理。项目用项目代码标识,使用过的项目代码不能重复使用。一个部门可承担多个项目,但一个项目仅由一个部门承担。一个项目有一名项目主管和多个职员;一个职员可参加多个项目。项目代码由系统自动生成,一旦项目建立,项目名、部门代码及起始年月日不能再变更。
3.项目的工作管理流程为:项目工作计划输入(初始计划)→工作业绩输入→业绩生成(每月一次)→计划修正(每月一次)。
①项目工作计划输入。项目主管使用如图1-9所示的计划输入界面,输入项目代码、职员代码、职员参加某个项目的月工作时间(计划)。图中空白区域为可输入项。
{{B}}项目代码{{/B}}
{{B}}123456{{/B}}
{{B}}项目名{{/B}}
{{B}}ABCD{{/B}}
{{B}}部门代码{{/B}}
{{B}}03{{/B}}
{{B}}部门名{{/B}}
{{B}}开发部{{/B}}
{{B}}起始年月日{{/B}}
{{B}}2007-06-11{{/B}}
{{B}}结束年月日{{/B}}
{{B}}2007-11-31{{/B}}
{{B}}登陆时间{{/B}}
{{B}}2007-05-28{{/B}}
{{B}}职员代码{{/B}}
{{B}}职员名{{/B}}
6月
7月
8月
9月
10月
11月
12月
1月
2月
3月
4月
5月
合计
0302
小郭
120
180
180
180
180
180
1020
0316
小谢
120
180
180
150
150
150
930
0309
张三
90
150
150
180
180
180
930
0328
李四
120
180
180
120
120
90
870
0321
王五
90
150
150
150
150
90
810 ②工作业绩输入。输入职员每天参加各个项目的工作时间。如图1-10所示为工作业绩输入界面,图中空白区域为可输入项。其中,出勤时间由考勤系统管理,指定项目代码的顺序可以不同,并且一天可以输入多个项目代码,但同一个项目代码不能重复输入。
{{B}}职工代号{{/B}}
{{B}}0302{{/B}}
{{B}}职员名{{/B}}
{{B}}小郭{{/B}}
{{B}}输入年月{{/B}}
{{B}}2007{{/B}}
{{B}}6月{{/B}}
{{B}}年月日{{/B}}
{{B}}星期{{/B}}
{{B}}出勤时间{{/B}}
{{B}}每个项目的工作时间{{/B}}
{{B}}项目代码{{/B}}
{{B}}工作时间{{/B}}
{{B}}项目代码{{/B}}
{{B}}工作时间{{/B}}
{{B}}备注{{/B}}
2007-06-11
一
12.0
123456
8.0
345678
4.0
2007-06-12
二
15.0
123456
10.0
345678
5.0
2007-06-13
三
18.0
123456
15.0
345678
3.0
2007-06-14
四
15.0
123456
15.0
2007-06-15
五
18.0
123456
18.0
2007-06-16
六
10.0
123456
10.0
2007-06-17
日
0.0
③业绩生成。月底汇总职员的当月工作业绩,生成月工作业绩表。
④计划修正。项目主管根据项目进度修改以后的工作计划。
郭工程师根据公司的项目需求将数据库关系模式设计如下:
部门(部门代码,部门名,起始年月,终止年月,办公室,办公电话); 职务(职务代码,职务名);
等级(等级代码,等级名,年月,小时工资);
职员(职员代码,职员名,部门代码,职务代码,任职时间);
项目(项目代码,项目名,部门代码,起始年月日,结束年月日,项目主管);
工作计划(项目代码,职员代码,年月,工作时间)。
问答题【说明】C市刚开通了地铁线,为方便乘客,计划开发自动售票系统。该公司在每一个地铁站放置了多台自动售票机,每一台售票机有一唯一编号,售票记录统一汇总主机。自动售票机只发售从该站起始的各种地铁票,因此乘客只需输入目的站,起始站默认为该站,售票机给出从该站到达目的站的单程票。打印地铁票时为其编一个唯一的流水号,并同时打印自动售票机的编号及票价。售票机的状态变化如下:“空闲”时,显示地铁线路图,等待乘客输入目的站;当乘客输入目的站后,转入“目的站确认/票数输入”状态,同时给出票价,此时若目的站有误,可返回到空闲状态重新输入,否则,输入票数;乘客输入票数后,转入“票数确认/付款”状态,同样此时若票数有误,可返回到上一状态重新输入,否则,投入钱币付款;当付款金额足够时,“出票/找零”(有必要时进行找零);然后转入“空闲”等待输入目的站状态。该系统采用面向对象方法开发,系统中的类及类之间的关系用UML类图表示,如图9-18所示是该系统类图的一部分,图9-19描述了自动售票机的状态转换图。1.【问题1】根据题意,给出“自动售票机”类的主要属性。
问答题 阅读以下说明,回答问题1和问题2,将解答写在对应栏内。
【说明】
一个野生动物园,有如下动物:老虎、豹、狼、丹顶鹤、鹦鹉、天鹅、金鱼、热带鱼、鳄鱼等等。
问答题【说明】Web页面与数据库的连接是Web数据库的基本要求。目前基于Web数据库的连接方案主要有服务器端方案和客户端方案两种类型。服务器端方案的实现技术有ASP等,客户端方案的实现技术有JDBC、DHTML等。其中,ASP是微软开发的脚本语言技术,嵌入在IIS中,因此,ASP成为大部分用户的首选脚本语言。图13-10给出了ASP的工作原理。
问答题[Java程序7-1]
import java.util.*;
public class OrderList{{U}} (1) {{/U}} {
private ArrayList<Order> orders;
public OrderList0 {
this.orders = new ArrayList<Order>();
}
public void addOrder(Order orde0
this.orders.add(order);
}
public Iterator<Order> iterator() {
return{{U}} (2) {{/U}};
}
public iht getNumberOfOrders0 {
return this.orders.size();
}
}
问答题[问题3]服务注册中心、服务提供者和服务请求者之间的交互和操作构成了WebService的体系结构,如下图所示。请用180字以内文字,说明这三者的主要功能及其交互过程。
问答题阅读下列说明和C代码,回答下列问题。[说明]用两台处理机A和B处理n个作业。设A和B处理第i个作业的时间分别为ai和bi。由于各个作业的特点和机器性能的关系,对某些作业,在A上处理时间长,而对某些作业在B上处理时间长。一台处理机在某个时刻只能处理一个作业,而且作业处理是不可中断的,每个作业只能被处理一次。现要找出一个最优调度方案,使得n个作业被这两台处理机处理完毕的时间(所有作业被处理的时间之和)最少。算法步骤如下。(1)确定候选解上界为R短的单台处理机处理所有作业的完成时间m,。(2)用p(x,y,k)=1表示前k个作业可以在A用时不超过x且在B用时不超过y时间内处理完成,则p(x,y,k)=p(x-ak,y,k-1)‖p(x,y-bk,k-1)(‖表示逻辑或操作)。(3)得到最短处理时间为min(max(x,y))。[C代码]下面是该算法的C语言实现。(1)常量和变量说明n:作业数m:候选解上界a:数组,长度为n,记录n个作业在A上的处理时间,下标从0开始b:数组,长度为n,记录n个作业在B上的处理时间,下标从0开始k:循环变量p:三维数组,长度为(m+1)*(m+1)*(n+1)temp:临时变量max:最短处理时间(2)C代码#include<stdio.h>intn,m;inta[60],b[60],p[100][100][60];voidread()……/*输入n、a、b,求出m,代码略*/voidschedule()/*求解过程*/intx,y,k;for(x=0;x<=m;x++)for(y=0;y<m;y++)______for(k=1;k<n;k++)p[x][y][k]=0;for(k=1;k<n;k++)for(x=0;x<=m;x++)for(y=0;y<=m;y++)if(x-a[k-1]>=0)______;if(______)p[x][y][k]=(p[x][y][k]‖p[x][y-b[k-1]][k-1]);voidwrite()/*确定最优解并输出*/intx,y,temp,max=m;for(x=0;x<=m;x++)for(y=0,y<=m;y++)if(______)temp______:if(temp<max)max=temp;print("/n%d/n",max);voidmain()read();schedule();write();
问答题阅读下列说明和图,回答问题。[说明]某医院拟开发一套住院病人信息管理系统,以方便对住院病人、医生、护士和手术等信息进行管理。[需求分析]{{U}}1{{/U}}系统登记每个病人的住院信息,包括:病案号、病人的姓名、性别、地址、身份证号、电话号码、入院时间及病床等信息,每个病床有唯一所属的病区及病房,如表1所示。其中病案号唯一标识病人本次住院的信息。表1住院登记表病案号071002286姓名张三性别男省份证号0102196701011234入院时间2011-03-03病床号052401病房0524室病房类型三人间所属病区05Ⅱ区{{U}}2{{/U}}在一个病人的一次住院期间,由一名医生对该病人的病情进行诊断,并填写一份诊断书,如表2所示。对于需要进行一次或多次手术的病人,系统记录手术名称、手术室、手术日期、手术时间、主刀医生及多名协助医生,每名医生在手术中的责任不同,如表3所示,其中手术室包含手术室号、楼层、地点和类型等信息。表2诊断书病案号071002286姓名张三性别男医生李某某诊断表3手术安排表手术名称某某手术病案号071002286姓名张三性别男手术室032501手术日期2011-03-15手术时间8:30~10:30主刀医生李**协助医生桂**(协助),周**(协助),刘**(协助),高**(麻醉){{U}}3{{/U}}护士分为两类:病床护士和手术室护士。每个病床护士负责护理一个病区内的所有病人,每个病区由多名护士负责护理。手术室护士负责手术室的护理工作。每个手术室护士负责多个手术室,每个手术室由多名护士负责,每个护士在手术室中有不同的责任,并由系统记录其责任。[概念模型设计]根据需求阶段收集的信息,设计的实体联系图(不完整)如图所示。[逻辑结构设计]根据概念模型设计阶段完成的实体联系图,得出如下关系模式(不完整):病床({{U}}病床号{{/U}},病房,病房类型,所属病区)护士({{U}}护士编号{{/U}},姓名,类型,性别,级别)病房护士({{U}}{{U}}1{{/U}}{{/U}})手术室({{U}}手术室号{{/U}},楼层,地点,类型)手术室护士({{U}}{{U}}2{{/U}}{{/U}})病人({{U}}{{U}}3{{/U}}{{/U}},姓名,性别,地址,身份证号,电话号码,入院时间)医生({{U}}医生编号{{/U}},姓名,性别,职称,所属科室)诊断书({{U}}{{U}}4{{/U}}{{/U}},诊断,诊断时间)手术安排({{U}}病案号,手术室号,手术时间{{/U}},手术名称)手术医生安排({{U}}{{U}}5{{/U}}{{/U}},医生责任)
问答题{{B}}试题1~试题4是必答题{{/B}}阅读以下某网上作业提交与管理系统的技术说明,根据要求回答问题1~问题3。
[说明] 某学校建立了一个网上作业提交与管理系统,基本功能描述如下。
(1)账号和密码。任课老师用账号和密码登录系统后,提交所有选修学生的名单。系统自动为每个选修学生创建登录系统的账号和密码。
(2)作业提交。选修学生使用账号和密码登录系统后,可以向系统申请所选课程的作业。系统首先检查学生的当前状态,如果该选修学生还没有做过作业,则从数据库服务器申请一份作业。若申请成功,则显示需要完成的作业。学生需在线完成作业,单击[提交]按钮上交作业。
(3)在线批阅。系统自动在线批改作业,显示作业成绩,并将该成绩记录在作业成绩统计文件中。