软工上机题.docx

上传人:b****0 文档编号:9835377 上传时间:2023-05-21 格式:DOCX 页数:15 大小:322.05KB
下载 相关 举报
软工上机题.docx_第1页
第1页 / 共15页
软工上机题.docx_第2页
第2页 / 共15页
软工上机题.docx_第3页
第3页 / 共15页
软工上机题.docx_第4页
第4页 / 共15页
软工上机题.docx_第5页
第5页 / 共15页
软工上机题.docx_第6页
第6页 / 共15页
软工上机题.docx_第7页
第7页 / 共15页
软工上机题.docx_第8页
第8页 / 共15页
软工上机题.docx_第9页
第9页 / 共15页
软工上机题.docx_第10页
第10页 / 共15页
软工上机题.docx_第11页
第11页 / 共15页
软工上机题.docx_第12页
第12页 / 共15页
软工上机题.docx_第13页
第13页 / 共15页
软工上机题.docx_第14页
第14页 / 共15页
软工上机题.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

软工上机题.docx

《软工上机题.docx》由会员分享,可在线阅读,更多相关《软工上机题.docx(15页珍藏版)》请在冰点文库上搜索。

软工上机题.docx

软工上机题

一、将下面给出的DFD转换为初始的模块结构图。

其中,虚线表示输入部分、变换部分和输出部分之间的界面。

1、

解:

转化后的初始模块结构图如下所示:

2、

解:

转化后的初始模块结构图如下所示:

3、

解:

转化后的初始模块结构图如下所示:

二、应用题

1、将下面的伪码转换为PAD图和N-S图。

begin

S1;

ifx>5thenS2

elseS3;

whiley<0doS4;

S5;

ifu>0thenbegin

S6;

whilek>5doS7;

end;

S8;

end.

解:

上述伪码对应的PAD图如下所示:

对应的N-S图如下所示:

2、将下面的伪码转换为PAD图和N-S图。

begin

S1;

ifm>0thenbegin

S2;

DoS3untilm<=0;

end

elsebegin

S4;

Ifn>3thenS5

ElseS6;

End;

whiley<0doS7;

S8;

whileu>0dobegin

S9;

Ifw>0thenS10

elseS11;

end;

S12;

end.

解:

上述伪码对应的PAD图如下所示:

对应的N-S图如下所示:

3、把下面的程序流程图转换为伪码、PAD图和N-S图。

解:

该程序流程图中包含非结构化的GOTO语句,在转换为结构化的伪码和PAD图、N-S图时需要进行处理。

转换的伪码如下:

begin

S1;

ifx<=5thenS2

i:

=1;

whilei<3dobegin

S3;

i:

=i+1;

end;

ify<0thenS4

elseS5;

end.

转换的PAD图如下所示:

转换的N-S图如下所示:

4、针对以下的程序伪码,给出该程序的控制流程图,并设计实现分支覆盖所需要的测试用例(表达用例的方法是任意的)。

Begin

输入一元二次方程的系数A,B,C;

为根变量赋初值;

IF平方项的系数A=0且一次项系数B<>0

THENBEGINRoot1:

=-C/B;输出“A=0”;

Root2:

=-C/B

END;

IF平方项的系数A<>0且一次项系数B=0

THENBEGIN

IF(-C/A)>=0

THENBEGINRoot1:

=SQR(-C/A);输出“B=0”;

Root2:

=-SQR(-C/A)

END

END;

IF平方项的系数A<>0且一次项系数B<>0

THENBEGIN

IF(B2-4AC)>=0

THENBEGINRoot1:

=(-B+SQR(B2-4AC))/2A;

Root2:

=(-B-SQR(B2-4AC))/2A

END

ELSE输出“此方程无实根”;

end

输出root1和root2的值

END.

解:

首先设定上述伪码中各过程块的编号,设定如下:

Begin

输入一元二次方程的系数A,B,C;

为根变量赋初值;

IF平方项的系数A=0且一次项系数B<>0

THENBEGINRoot1:

=-C/B;输出“A=0”;

Root2:

=-C/B

END;

IF平方项的系数A<>0且一次项系数B=0

THENBEGIN

IF(-C/A)>=0

THENBEGINRoot1:

=SQR(-C/A);输出“B=0”;

Root2:

=-SQR(-C/A)

END

END;

IF平方项的系数A<>0且一次项系数B<>0

THENBEGIN

IF(B2-4AC)>=0

THENBEGINRoot1:

=(-B+SQR(B2-4AC))/2A;

Root2:

=(-B-SQR(B2-4AC))/2A

END

ELSE输出“此方程无实根”;

输出root1和root2的值

END.

控制流程图如下所示:

为实现分支覆盖所需测试用例如下(用三元组表示A、B、C的取值)

(0,0,1)(0,1,2)(2,0,2)(2,0,-2)(1,2,1)(1,1,1)

三、建模题

1、针对以下给出的问题陈述:

(1)用结构化分析方法建立该系统的顶层和0层DFD图,并给出相关的数据字典;

(2)用面向对象方法,标识该系统中的类,并给出类的基本属性和操作。

问题陈述如下:

在要建立的某商场简化的管理信息系统中,

(1)库房管理员负责

1)输入、修改、删除入/出库商品信息(品名,编号,生产厂家,数量,单价,入/出库日期),

2)打印库房商品库存清单(品名,编号,库存量,库存金额);

(2)销售员负责

1)登入商品销售信息(品名,编号,销售量,单价),

2)输入、修改、删除入/出前台的商品信息(品名,编号,生产厂家,数量,单价,入/出库日期),

3)打印前台商品库存清单(品名,编号,库存量,库存金额);

(3)部门经理随机查询或打印统计报表

1)日、月销售金额,

2)日、月库存情况(品名,编号,库存量,库存金额),

3)日、月前台库存情况(品名,编号,库存量,库存金额),

4)打印年销售金额统计表、年库存误差统计表。

解:

(1)顶层DFD如下图所示:

0层DFD图如下所示:

数据字典如下(仅以数据流条目为例,不包括文件条目):

管理要求1=[输入入/出库商品信息|修改入/出库商品信息|删除入/出库商品信息]

管理要求2=[登入商品销售信息|输入入/出前台的商品信息|修改入/出前台的商品信息|删除入/出前台的商品信息]

查询要求=[查询日、月销售金额|查询日、月库存情况|查询日、月前台库存情况]

商品信息=品名+编号+生产厂家+数量+单价+入/出库日期

库房库存清单=品名+编号+库存量+库存金额

商品销售信息=品名+编号+销售量+单价

前台库存清单=品名+编号+库存量+库存金额

统计报表=[日、月销售金额|日、月库存情况|日、月前台库存情况]

日、月库存情况=品名+编号+库存量+库存金额

日、月前台库存情况=品名+编号+库存量+库存金额

金额、误差统计表=[年销售金额统计表|年库存误差统计表

……

(2)该系统中的类标识如下(供参考,答案不唯一)

2、针对以下给出的问题陈述:

1)用结构化分析方法建立该系统的顶层和0层DFD图,并给出相关的数据字典;

2)用面向对象方法,标识该系统中的类,并给出类的基本属性和操作。

问题陈述如下:

在要建立的简化学籍管理系统中:

管理员A:

负责录入在籍学生的基本信息(姓名,学号,年级,入学时间);

管理员B:

负责录入在籍学生的各科成绩及奖罚情况(时间、类型);

管理员C:

负责统计毕业年级每一学生的所修学分,列出那些没有修满学分的学生(姓名,学号,学分),并在日常工作中,根据学校有关规定查询这一系统,对那些应受到开除处分的同学提出开除学籍的报告。

解:

(1)该系统的顶层DFD如下所示:

该系统的0层DFD图如下所示:

数据字典如下(仅以数据流条目为例,不包括文件条目):

管理要求=[录入学生成绩|录入奖罚情况]

学生基本信息=姓名+学号+年级+入学时间

奖罚情况=时间+类型

学生名单=姓名+学号+学分

……

(2)该系统中的类标识如下(供参考,答案不唯一)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2