题目

●试题一

阅读下列说明和有关的图表,回答问题1至问题3,将解答填入答题纸的对应栏内。

【说明】

A公司决定为该市车站开发自动售票系统,系统的要求如下:

1.乘客能按以下三步操作购票:选定目的地;投入钱币;获得一张票;

2.当且仅当乘客选定目的地后,系统才接收投钱,每次投入的钱只购买一张票;

3.只要投入的钱不少于所需的票价,且票库中有所要求的票,则应尽快出票;

4.如需找钱,则在出票的同时应退还多余的钱;

5.如果乘客投入的钱不够票价,或者票库中没有所要求的票时,系统将全额退钱,并允许乘客另选目的地,继续购票;

6.出票前乘客可以按"取消"按钮取消购票,系统将全额退出该乘客投入的钱,并允许乘客另选目的地,继续购票;

7.出票结束(包括退还多余的钱)后,系统应保存销售记录,并等待乘客购票。

该系统还要求快速响应和操作同步,所以它应是一个实时系统。为此,A公司在该系统的数据流程图中附加了过程控制部分,形成转换图。在该图中,控制流(事件流)用虚线表示,数据流用实线表示。图中的数据流并没有画全,需要考生填补。转换图如图1所示。

图1转换图

程进行的控制可以用系统内部各个状态之间的迁移来描述,从而形成状态迁移图。在状态迁移图中,用双线框表示状态,用有向边表示状态的迁移。引起状态迁移的事件以及由该事件引起的动作,在有向边旁用"事件动作"形式注明。状态迁移图如图2所示。

图2状态迁移图

该公司还制作了一个过程启动表,用以表明状态迁移图中的4个动作与转换图中的4个过程之间的"启动"关系,即说明哪个动作将启动哪个过程。用1表示启动,用0表示不启动。启动的过程将根据获得的输入数据产生输出数据,未启动的过程则不会产生输出数据。该表中没有列出的过程,其执行与否与事件无关。过程启动表见表1:

【问题1】

转换图中缺少哪三条数据流?请指明每条数据流的名称、起点和终点。

【问题2】

在状态迁移图中,a,b,c分别表示什么事件?请用转换图中给出的事件名解答。

【问题3】

在过程启动表中,d,e处应填什么?请分别用4位二进制码表示。

答案
查看答案
相关试题

●试题三

阅读下列说明,回答问题1至问题4,将解答填入答题纸的对应栏内。

【说明】

甲公司的经营销售业务目前是手工处理的,随着业务量的增长,准备采用关系数据库对销售信息进行管理。经销业务的手工处理主要涉及三种表:订单、客户表和产品表(见表2,表3和表4)。

为了用计算机管理销售信息,甲公司提出应达到以下要求:产品的单价发生变化时,应及时修改产品表中的单价数据。客户购货计价采用订货时的单价。订货后,即使单价发生变化,计算用的单价也不变。

在设计数据库时,经销部的王先生建立了如图4所示的数据模型。其中,方框表示实体,单向箭头表示1对多的联系,双向箭头表示多对多的联系。

由于上述模型对建立关系数据库是不合适的,因此王先生又修改了数据模型,并设计了如下几个关系(带下划线的数据项是关键项,最后一个关系中没有指出关键项):

Customer(CustomerNo,CustomerName,Address,Phone)

Product(ProductNo,ProductName,UnitPrice)

Order(OrderNo,CustomerNo,Date)

OrderDetail(OrderNo,ProductNo,Quantity)

【问题1】

请按【说明】中的要求画出修改后的数据模型。

【问题2】

(1) 【说明】中的几个关系仍无法实现甲公司的要求,为什么?

(2) 需要在哪个关系中增加什么数据项才能实现这个要求?

【问题3】

写出OrderDetail中的关键项。

【问题4】

以下SQL语句用于查询没有订购产品代码为"1K10"的产品的所有客户名。请填补其中的空缺。

SELECT CustomerName FROM Customer (1)

WHERE (2)

(SELECT*FROM OrderDetail B,Order C

WHERE

B.ProductNo=

C.ProductNo

AND

B.ProductNo=′1K10′

AND

C.CustomerNo=A.CustomerNo)

【问题5】(3分)

在网络B中,除PC5计算机以外,其它的计算机都能访问网络A的WWW服务器,而PC5计算机与网络B内部的其它PC机器都是连通的。分别在PC5和PC6上执行命令ipconfig,结果信息如图2-8和图2-9所示:

请问PC5的故障原因是什么?如何解决?

【问题3】(3分)

为保证Web服务器能正常对外提供服务,还需要在图4-5所示的“服务和端口”选项卡中勾选(7)选项。如果要让来自Internet的ping消息通过S1,在图4-6中至少要勾选(8)选项。

●试题七

阅读以下说明和C++程序,将应填入(n)处的字句写在答题纸的对应栏内。

【说明】

设计一个评选优秀教师和学生的程序,其类结构如图6所示。当输入一系列教师或学生的记录后,将优秀学生及教师的姓名列出来。

图6

【程序】

include

include

enum boolean{False,True};

class base

{

protected:

char name[8];

public:

void getname(){cout<<"姓名:";cin>>name;}

void printname(){cout<<"姓名:"<

virtual boolean isgood()=0;

}

class student: (1)

{

int num;

public:

void getnum()

{

cout<<"考试成绩:"; cin>>num;

}

boolean isgood(){return (2) ;}

};

class teacher: (3) public base

{

int num;

public:

void getnum()

{

cout<<"每年发表论文数:";cin>>num;

}

boolean isgood(){return (4) ;}

};

void main()

{

base*p[50 ];

student*pstud;

teacher*ptech;

char ch;

int count=0;

do

{

cout<<"输入教师(t)或学生(s):";

cin>>ch;

if(ch==′s′)

{

pstud=new student;

pstud->getname();

pstud->getnum();

p[count++]=pstud;

}

else if(ch==′t′)

{

ptech=newteacher;

ptech->getname();

ptech->getnum();

p[count++]=ptech;

}

else

cout<<"输入错误"<

cout<<"继续输入吗(Y/n)";

cin>>ch;

}while(ch==′y′);

for(int i=0;i

{

if((5) )∥若为优秀,则输出

p[i]->printname();

}

}

●试题七

阅读以下说明及Visual Basic程序代码,将应填入(n)处的字句写在答题纸的对应栏内。

【说明】

某学校举办了一场奥运知识竞赛,参加竞赛的选手为200名,1~200为选手编号。竞赛时间为9:00~11:00。8道竞赛题目依次从"A"~"H"编号,选手可按任意次序答题,每完成一道题目,可立即提交答案。若答案正确(Y),则选择其他题目进行解答,否则,可继续做该题目或选择其他题目进行解答,直至竞赛结束。

选手提交答案的情况及判定结果由专人即时录入,录入数据包括提交答案的时间、选手编号、题目编号(A~H)、是否正确(Y/N)等。

对竞赛情况进行统计和排名的规则如下:

1.若选手X在竞赛时提交的题目P解答正确,则解答该题目所用时间计算如下:

解答题目P的用时=提交题目P正确的时间-竞赛的开始时间+罚时罚时=提交题目P错误解答的次数×20例如:表1中14号选手在10:27提交了题目A的正确解答,因此该选手正确解答该题目所用时间P为87分钟,由于他在09:37和09:52两次提交了题目A的错误解答,因此罚时为(2×20)分钟=40分钟,所以14号选手解答题目A的用时=(87+40)分钟=127分钟。

2.已经提交正确答案的题目再次提交时不再计算。

3.竞赛结束时,选手的总用时为所有解答正确的题目用时累加所得,解答不正确的题目不计时。

4.排名时,完成题目数量多者排名靠前;若完成的题目数相同,则用时少者排名靠前;若完成的题目数和所用时间均相等,则名次相同;完成题目数为0的选手不参加排名。

本应用程序的运行窗口如图3所示。

图3

窗口中的两个文本框为Txt_time和Txt_player,分别用于录入提交答案的时间和选手编号。组合列表框Combol提供题目编号(A~H),录入时从中选择。检查框Chk_yn用于输入解答是否正确信息。当单击"确定"按钮(Cmd_comfirm)时,录入的提交信息加入列表框Listl中,排名情况在列表框List2输出。单击"关闭"按钮时退出应用程序。

在开发过程中,需要编写的部分程序代码如下:

【程序】

Private Type Info

No As Integer′选手编号

Num As Integer′完成题目数量

Time As Integer′完成题目的总用时

d (8) As Integer′d用于记录提交第i个题目错误答案的次数

a (8) As Boolean′a用于记录第i个题目是否已经提交正确答案

End Type

Dim R(201)As info′R[j]用于统计编号为j的选手提交答案的情况

Dim MaxIndex As Integer′MaxIndex记录提交答案的选手中编号最大者

Private Sub Form_Load()

For i=1 to 8

Combo1.AddItem chr((1) )

Next

Combo1.Text=Combo1.List(0):txt_time.Text="":txt_player.Text=""

For i=1 To 200

R(i).num=0:R(i).time=0:R(i).no=i

Forj=1 To 8

R(i).d(j)=0:R(i).a(j)=False

Next j,i

End Sub

Private Sub cmd_confirm_Click()

Dim h,m,k,time As Integer,ch,pass,s1 As String

K=Instr(txt_time.text,"∶"):If k<2 Then Goto error1

H=Val(Left(txt_time.Text,k-1)):m=Val(Mid(txt_time.Text,k+1))

If h>11 Or h=11 And m>0 Or m>=60 Then goto errorl

Time= (2) ′计算答题时间,以分钟为单位

If txt_plater.text<1 or txt_player.text>200 Then Goto error1

ch= (3)

pass=IIf(chk_yn. (4) =0,"N","Y")

s1=txt_time.Text+Space (4) +txt_player.Text

s1=s1+Space(10-Len(txt_player.Text))+ch+Space (8) +pass

List1.Additem s1

K=Val(txt_player.Text)′k为选手编号

R(k).no=k′编号为k的选手的提交信息记录在下标为k的数组元素中

If k>maxindex Then maxindex=k

M=Asc(ch)-Asc("a")

If pass<>"Y"Then′编号为k的选手提交第m个题目的解答不正确

R(k).d(m)=R(k).d(m)+1

Else If R(k).a(m)<>True Then′已经提交正确的题目的解答不再计算

R(k).a(m)=true:R(k).num=R(k).num+1

R(k).time=R(k).time+ (5)

Call statistic′调用过程statistic进行实时排名和输出

End If

Exit Sub

error1:MsgBox"录入信息有错误!",vbOKOnly

End Sub

最新解答的试题
付款人在进行付款时无()

A.形式审查义务

B.实质审查义务

C.附带审查义务

D.票据外有关事项的审查义务
根据《公司法》的规定,有限责任公司下列人员中,可以提议召开股东会临时会议的是()。
A.总经理B.人数过半数的股东C.监事会主席D.人数为半数的董事
关于股份有限公司中的监事会,下列说法错误的是()

A.监事会负责提议聘请或更换外部审计机构B.监事会主席和副主席由全体监事过半数选举产生C.监事会中的职工代表的比例不得低于三分之一D.监事会应至少每6个月召开一次会议
三北精神的科学内涵
阿里巴巴提供了“企业名称认证”“企业身份认证”不同种类的认证,可以根据自身的