软件工程例题

软件工程例题
软件工程例题

软件工程例题

1.某旅馆的电话服务如下:可以拨分机号和外线号码。分机号是从7201至7299。外线号码先拨9,然后是市话号码或长话号码。长话号码是以区号和市话号码组成。区号是从100到300中任意的数字串。市话号码是以局号和分局号组成。局号可以是455,466,888,552中任意一个号码。分局号是任意长度为4的数字串。

要求:写出在数据字典中,电话号码的数据流条目的定义即组成。

电话号码=[分机号|外线号码]

分机号=7201 (7299)

外线号码=9+[市话号码|长话号码]

长话号码=区号+市话号码

区号=100 (300)

市话号码=局号+分局号

局号=[455|466|888|552]

分局号=4{数字}4

数字=[0|1|2|3|4|5|6|7|8|9]

2.为以下程序流程图分别设计语句覆盖和判定覆盖测试用例,并标明程序执行路径。

3.

4.人们往往根据天气情况决定出门时的行装。天气可能下雨,也可能不下雨;下雨或不下雨天气可能变冷,也可能不变冷。如果天气要下雨,出门时带上雨伞;如果天气变冷,出门时要穿上大衣。

下雨不下雨

天气情况

变冷不变冷变冷不变冷带雨伞Yes Yes No No

穿大衣Yes No Yes No

4.对下列子程序进行调试:

procedure example(y,z: real; var x: real)

begin

if (y>1) and (z=0) then x:=x/y;

if (y=2) or (x>l) then x:=x+l;

end.

该子程序接受x, y, z的值,并将计算结果x 的值返回给调用程序。完成下列各题:

(1)画出程序流程图。

(2)用条件组合覆盖设计测试用例,并写出其中一组测试用例。

答:(1)程序流程图

(y>1) AND (z=0)

(y=2) OR (x>1)

x=x/y

x=x+1

N

N

Y

Y

(2)用白盒法中条件组合覆盖设计测试用例:

① y=2, z=0, x=4; ② y=2, z=1, x=1; ③ y=1, z=0, x=2;

④ y=1, z=1, x=1. (注:也可有其它答案)

5.

选择排序的伪代码如下,请根据代码画出其PAD 图。

select_sort(a[1],a [2],…,a[n]) {

for(i=1;i

k=i;

for(j=i+1;j<=n;j++) {

if(a[j]

if(k!=i) exchange(a[i],a[k]); } } }

Select_sort 对a[1]...a[n]进行选择排序

i=i+1

k=i,j=i+1

j=j+1

While j<=n

Def

i=1

While i

a[j]

exchange(

a[i],a[k])k=j

k!=i T

T

6. 一本书有一个封面、一个目录、一个前言、若干章、每章有若干节、每节有若干段,有若干句子,有0个或多个插图,还有0个或多个表格,书最后有一个附录。试建立该书的对象模型。

目录

封面

前言

附录

句子

插图表格

1+

1+

1+

1+**

7.

根据伪码画出N -S 图和PAD 图。 START IF A THEN

X1

DO UNTIL B

ELSE X2 Y END IF Z STOP N-S 图:

PAD 图:

T

F

UNTIL B START

STOP

Z

X2Y

X1

8. 某报社采用面向对象技术实现报刊征订的计

算机管理系统,该系统基本需求如下: (1)报社发行多种刊物,每种刊物通过订单来征订,订单中有代码,名称,订期,单价,

A

X X2

Y

Z

相关主题
相关文档
最新文档