《软件工程》模拟卷A
- 格式:doc
- 大小:58.00 KB
- 文档页数:5
《软件工程》期末试卷(A卷)一.单项选择题(每题1分,共22分)1.对象实现了数据和操作旳结合,使数据和操作( C )于对象旳统一体中。
A.结合B.隐藏C.封装D.抽象2.软件生命周期中所花费用最多旳阶段是( D )。
A.详细设计B.软件编码C.软件测试D.软件维护3.需求分析中开发人员要从顾客那里理解( A )。
A.软件做什么B.顾客使用界面 C.输入旳信息D.软件旳规模4.测试旳关键问题是( D )。
A.怎样组织对软件旳评审B.怎样验证程序旳对旳性C.怎样采用综合方略D.怎样选择测试用例5.( D )是将系统化旳、规范旳、可定量旳措施应用于软件旳开发、运行和维护旳过程,它包括措施、工具和过程三个要素。
A.软件过程B.软件测试C.软件生命周期D.软件工程措施学6.( A )意味着一种操作在不一样旳类中可以有不一样旳实现方式。
A.多态性B.多继承C.类旳可复用D.信息隐藏7.单元测试旳测试用例重要根据( D )旳成果来设计。
A.需求分析B.源程序C.概要设计D.详细设计8.伴随软硬件环境变化而修改软件旳过程是( B )。
A.校正性维护B.适应性维护C.完善性维护D.防止性维护9.在白盒测试技术测试用例旳设计中,( A )是最弱旳覆盖原则。
A.语句覆盖B.途径覆盖C.条件组合覆盖D.鉴定覆盖10.构造化程序设计旳一种基本措施是( C )。
A.筛选法B.迭代法C.逐渐求精法D.递归法11.不适合作为科学工程计算旳程序设计语言是( D )。
A.Pascal B.CC.Fortran D.Prolog12.只有单重继承旳类层次构造是( C )层次构造。
A.网状型B.星型C.树型D.环型13.面向对象旳开发措施中,( C )将是面向对象技术领域内占主导地位旳原则建模语言。
A.Booch措施B.Coad措施C.UML语言D.OMT措施14.瀑布模型本质上是一种( A )。
A.线性次序模型B.次序迭代模型C.线性迭代模型D.及早见产品模型15.软件维护产生旳副作用,是指( C )。
《软件工程》试卷答案A卷答案:一.填空1、①与软件本身的特点有关;②如软件开发的方法与维护不正确有关。
2、数据流3、图形4、结构测试功能测试5、伪玛,软件设计语言。
6、为了解决这个问题,目标系统必须做什么?7、软件需求规格说明书8、PAD图、判定表、判定树和PDL语言任意写出三种即可。
9、数据结构10、功能二.判断1、×2、√3、√4、×5、×6、√7、√8、×9、√10、×三、选择题1、C2、A3、C4、B5、D6、D7、D8、B9、B 10、A四、1、简述原型法的基本思想:答:用交互的、快捷建立起来的原型取代规格说明,用户通过再计算机上运行、使用这个原型系统了解系统的概貌,想开发者提供反馈意见。
2、什么是软件危机?答:软件危机是计算机软件在它的开发和维护过程中所遇到的一系列严重问题。
概括地说,主要包含两方面的问题:如何开发软件,怎样满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。
3、简述软件测试的步骤,简要说明各测试步骤的目的。
答:软件系统的测试基本上由以下几个步骤组成:模块(单元)测试,目的是保证第个模块作为一个单元能正确执行。
子系统测试,目的是把经过单元测试的模块放在一起形成一个子系统,测试模块相互间的协调和通信。
系统测试,在这个过程中不仅应该发现设计和编码的错误,还应该验证系统确实能提供需求说明书中指定的功能,而且系统的动态特性也符合要求。
验收测试,目的是验证系统确实能够满足用户的要求。
4、需求分析的任务是什么?答:需求分析的主要任务第一、正确地确定对系统综合要求,充分理解和表达用户的需求。
也就是详细定义开发软件的功能、性能、外部接口、设计限制、数据库需求、确定硬件和软件支持环境、辅助软件以及将来可能提出的要求。
第二、通过结构分析的方法对系统进行分解,以确定软件系统的主要成分或软件系统的构成。
第三、是对以上已进行的两项工作进行描述,以形成需求文档,也就是编制“需求规格说明书”。
软件工程期末试卷A试题一、结构化分析与设计(共20 分,每小题10分)需求陈述:高考录取统分子系统有如下功能:(1) 计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;(2) 计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。
要求:用结构化方法学对高考录取统分子系统进行分析与设计,分别完成以下工作:(1)给出高考录取统分子系统的功能模型(用数据流图表示)。
(10分)(2) 给出高考录取统分子系统的软件体系结构(用H图或结构图表示)。
(10分)答案网上搜的答案结构图即软件的模块试题二、下面是程序流程图,试分别用N-S图和伪代码(类C语言描述)表示。
(共20分)答案:我做的:do {if(!p) {g真假假开始结束p>0q真exit();}g;} while(q);我自己做的,可以不太对Do{If(p为真){执行gIf(g为真){do nothing}Else if(g为假){return}}Else if(p为假){Return}}while(g为真)试题三、(共20 分,每题10 分)阅读下面的程序段,回答后面的问题:float calculateTotal( int N) //计算满足条件的N个数的和{float count = 0.0;int i=1;while ( i<=N ){if( i % 4 == 0) count += i;i++;}return count;}(1)画出上述程序的有向流图,并计算该函数的环形复杂度。
(每问5分,共10分)(2)请用基本路径的测试技术完成该函数的测试。
要求给出基本路径和测试用例。
(每问5分,共10分)答:这道题课本上没有知识点,从网上搜出来的,知识点见“测试基础”PPT的P30页白盒测试代码分支图的环形复杂度计算:环形复杂度以图论为基础,为我们提供了非常有用的软件度量。
可用如下三种方法之一来计算环形复杂度:(1)控制流图中环形区域的数量对应于环形复杂度。
《软件工程》A卷答案一、选择题(每题2分,共20分)1. 软件需求规格说明的内容不应包括(B )。
A. 主要功能B. 算法的详细描述C. 用户界面及运行环境D. 软件的性能2. 程序的三种基本控制结构是( B)。
A. 过程、子程序和分程序B. 顺序、选择和重复C. 递归、迭代和回溯D. 调用、返回和转移3. 在E-R模型中,包含以下基本成分(C)。
A.数据、对象、实体B.控制、联系、对象C.实体、联系、属性D.实体、属性、操作4.软件测试的目标是(B )。
A. 证明软件是正确的B. 发现错误、降低错误带来的风险C. 排除软件中所有的错误D. 与软件调试相同5.软件生命周期中所花费用最多的阶段是(D)A,详细设计B,软件编码C,软件测试D,软件维护6.详细设计的基本任务是确定每个模块的(D)设计A,功能 B,调用关系 C,输入输出数据 D,算法7.下面几种白盒测试技术,哪种是最强的覆盖准则( D)A,语句覆盖 B,条件覆盖 C,判定覆盖 D,条件组合覆盖8.面向数据流的设计方法把(A)映射成软件结构。
A,数据流 B,系统结构 C,控制结构 D信息流9.需求分析的产品是(D)A,数据流程图案 B,数据字典 C判定表 D,需求规格说明书10.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是(C)A,数据库设计 B,数据通信 C,数据定义 D数据维护二、判断题(每题2分,共20分)1、开发软件就是编写程序。
(×)2、系统测试的主要方法是白盒法……(×)3、编程序时应尽可能利用硬件特点以提高程序效率.(×)4、软件需求分析的任务是建立软件模块结构图。
(×)5、尽可能使用高级语言编程。
(√)6、以结构化分析方法建立的系统模型就是数据流图。
(×)7、进行总体设计时加强模块间的联系。
(×)8、编码时尽量多用全局变量.(×)9、用CASE环境或程序自动生成工具来自动生成一部分程序.(√)10、软件测试是要发现软件中的所有错误。
全国自考(软件工程)模拟试卷1(题后含答案及解析) 题型有:1. 单项选择题 2. 填空题 3. 简答题 4. 综合应用题单项选择题1.在结构化方法中,软件功能分解应属于软件开发中的哪一阶段( )A.详细设计B.需求分析C.总体设计D.编程调试正确答案:C解析:总体设计阶段的基本任务是把系统的功能需求分配到一个特定的软件体系结构中,这里的分配是指功能的分解。
2.不属于软件项目计划中所包含的内容的是( )A.培训计划B.人员安排C.进度安排D.软件开发标准的选择和制定正确答案:D解析:软件项目计划包含培训计划、进度安排和人员安排等。
3.一个模块的哪项能直接控制该模块的模块数( )A.扇出数B.扇人数C.宽度D.深度正确答案:B解析:一个模块的扇人数是指能直接控制该模块的模块数。
4.软件组装成系统的一种测试技术是( )A.系统测试B.单元测试C.集成测试D.集合测试正确答案:C解析:题目中的选项最具混淆的是集成测试与系统测试。
系统测试是指将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,进行信息系统的各种组装测试和确认测试;而集成测试集中于模块组合的功能和软件结构检验。
5.下列关于关联的说法错误的是( )A.一个关联连接n个类目叫做n元关联B.关联是类目中的一种结构关系C.关联用一条连接两个类目的线段表示D.关联不具有方向性正确答案:D解析:关联是有方向的,可以用一个实心三角形来指示关联的方向。
6.当模块中包含复杂的条件组合,下列能够清晰地表达出各种动作之间的对应关系的只有( )A.判定表和判定树B.盒图C.流程图D.关系图正确答案:A解析:如果一个加工的输人数据和输出数据之间的逻辑关系比较复杂,应该用判定表或判定树来描述。
7.在软件总体设计阶段的主要任务不包括( )A.设计软件的模块结构B.定义接口并建立数据结构C.生成概要设计规格说明和组装测试计划D.模块设计正确答案:D解析:选项D属于详细设计的任务。
烟台大学20 09~20 10 学年第一学期软件工程试卷A一、多选题(5分)【将答案填写在后面的答题卡中,注意相应的题号】从下面关于程序设计风格和软件测试的叙述中,选出5条正确的叙述。
A.不要修补不好的程序, 要重新写。
B.尽可能对程序代码进行优化。
C.D.有n个判定语句,则有2n条路径。
E.F.GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。
G.H.对递归定义的数据结构不要使用递归过程。
I.J.二、单项选择题(本大题共15小题,每小题1分,共15分)【将答案填写在后面的答题卡中,注意相应的题号】1. 时序图反映对象之间发送消息的时间顺序,它与()是同构的。
A.用例图 B.类图C. 活动图D.协作图2. 原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于()系统。
A. 需求不确定的B. 需求确定的C. 管理信息D. 决策支持3. ()意味着一个操作在不同的类中可以有不同的实现方式。
A. 多态性B. 多继承C. 类的可复用D. 信息隐蔽4. 在软件开发的各种资源中,()是最重要的资源。
A. 开发工具B. 方法C. 硬件环境D. 人员5. CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。
除第1级外,每个等级都包含了实现该成熟度等级目标的若干()。
A. 关键实践B. 关键过程域C. 软件过程能力D. 软件过程6.在各种不同的软件需求中,功能需求描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明,()是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。
A. 业务需求B. 功能要求C. 非功能需求D. 用户需求7.在面向对象的系统中,系统责任的良好分配原则是()。
A. 在类之间均匀分配B. 集中分配在少数控制类中C. 根据交互图的消息进行分配D. 根据个人喜好进行分配8.软件配置项是软件配置管理的对象,即软件工程过程中产生的()。
信息工程系 07级软件工程课程考试类型:闭卷 A卷答卷时间:90分钟一、判断题(每题1分,共20分)1.测试计划、测试用例和有关的分析报告一般不用长期保存。
()2.软件需求是指用户提出的目标软件系统在功能、性能、行为、设计约束等方面的期望。
()3.软件工程使用的软件支持工具能够自动或半自动地支持软件的开发、管理和文档的生成。
()4.面对日益增长的软件需求,人们显得力不从心。
往往是产生软件危机的原因之一。
()5.软件过程设计不用遵循“自上而下,逐步求精”的原则和单入口单出口的结构化设计思想。
()6.数据流图就是用来刻画数据流动和转换的信息系统建模技术。
()7.PDL经常表现为一种“混杂”形式的语言,它不允许自然语言如英语的词汇与某种结构化程序设计语言(如Pascal、C、Ada等)的语句结构交织在一起。
()8.内聚度标志一个模块内部各成分彼此结合的紧密程度,按其高低程度可分为七级,内聚度越低越好。
()9.质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动。
()10. 数据字典是数据流图中的数据流动,加工、数据存储、数据的源和终点进行详细定义。
()11. 软件是指用程序设计语言编写的程序,软件开发实际上就是编写程序代码。
()12. 模块化程序设计中,模块越小,模块化的优点越明显。
一般来说,模块的大小都在10行以下。
()13. 集成测试主要由用户来完成。
()14.只有了解用户、了解任务,才能设计出好的用户界面。
()15.开发一个软件项目总存在某些不确定性,即存在风险。
有些风险如果控制得不好,可能导致软件工程第1页(共8页)灾难性的后果。
()16.一个好的开发人员应具备的素质和能力包括善于与周围人员团结协作,建立良好的人际关系,善于听取别人的意见。
()17.快速原型技术适用于软件产品要求大量的用户交互、或产生大量的可视输出、或设计一些复杂的算法等场合。
()18.数据输入的一般准则中包括尽量增加用户输入的动作。
大连海事大学《软件工程》试卷及答案A卷专业年级姓名得分一、名词解释(每个2分,共10分)1.软件危机2.纯收入3.模块4.原型5.BROOKS定律二、填空题(每题2分,共20分)1.____是计算机程序及其说明程序的各种文档。
_____是有关计算机程序功能、设计、编制、使用的文字或图形资料。
2.软件生存周期是指一个软件从提出开发要求开始直到该软件报废不止的整个时期。
通常,软件生存周期包括问题定义、____、____、总体设计、详细设计、____、____、软件维护活动,可以将这些活动以适当方式分配到不同阶段去完成。
3.软件详细设计阶段采用的工具有______。
4.____的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。
5.模块的耦合性分为四种类型:____、____、____、____。
6.内聚性有七种类型,最强的是____,最弱的是____。
7.结构图的深度指结构图______,结构图宽度指________。
8.集成测试采用的具体方法有--____、______9.对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的____、逻辑输入、逻辑输出。
10.软件编码阶段要善于积累编程的经验,使得编出的程序____,易于____,从而提高软件质量。
三、选择题(每题2分,共20分)1.系统定义明确之后,应对系统的可行性进行研究。
可行性研究应包括()。
A.软件环境可行性、技术可行性、经济可行性、社会可行性B.经济可行性、技术可行性、操作可行性C.经济可行性、社会可行性、系统可行性D.经济可行性、实用性、社会可行性2.通过()可以完成数据流图的细化。
A.结构分解B、功能分解C、数据分解D、系统分解3.模块(),则说明模块的独立性越强。
A.耦合越强B、扇入数越高C、耦合越弱D、扇入数越低4.模块()定义为受该模块内一个判断影响的所有模块集合。
软件工程模拟题选择题1.软件设计中划分模块的一个准则是( C )。
A 低聚低耦合B 低聚高耦合C 高聚低耦合D.高聚高耦合2.( A )是用户和设计交换最频繁的法。
A、原型化法B、瀑布模型法C、螺旋模型法D、构件组装模型3. 试判断下列叙述中,哪个些是正确的( C )。
a、软件系统中所有的信息流都可以认为是事务流b、软件系统中所有的信息流都可以认为是变换流c、事务分析和变换分析的设计步骤是基本相似的D、汇编语言6. 软件测试的目的是?( D )A.软件的正确性B.找出软件系统中存在的所有错误C.证明软件系统中存在错误D.尽可能多的发现软件系统中的错误7.使用白盒测试法时,确定测试数据应根据( A )和指定的覆盖标准。
A、程序的部逻辑B、程序的复杂程度C、该软件的编辑人员D、程序的功能8.软件维护工作的最主要部分是( C )。
A、纠正性维护B、适应性维护C、完善性维护D、预防性维护12.总体设计目的是确定整个系统的( D )。
A、规模B、测试案C、费用D、功能及模块结构13. 检查软件产品是否符合需求定义的过程称为( A )。
A、确认测试B、集成测试C、验收测试D、验证测试14、在七种偶合中,最低偶合是( C )。
A、容偶合B、公共偶合C、数据偶合D、非直接偶合15. 以下不属于白盒测试技术的是( D )A. 逻辑覆盖B. 基本路径测试C、循环覆盖测试D、等价类划分16. 软件的发展经历了( D )个发展阶段A.1B. 2C.3D.417. 需求分析的任务不包括( B )A. 问题分析B. 系统设计C. 需求描述D. 需求评审。
21.一个模块的( B )是指能直接控制该模块的模块数。
A. 扇出数B. 扇入数C. 宽度D. 深度22.下列模型属于成本估算法的是( A )A、COCOMO 模型B、McCall 模型C、McCabe 度量法D、时间估算法23.在衡量软件质量时,最重要的标准是( B )。
《软件工程》模拟卷A
一、填空题(每空1分,共25分)
1.软件生存周期一般可以划分为,问题定义、____________、____________、设计、
编码、测试和____________。
2.基于软件的功能划分,软件可以划分成__________、__________、__________三种。
3.可行性研究,应从、技术可行性、运行可行性、和开
放方案可行性等方面研究。
4.系统流程图是描绘的传统工具。
它的基本思想是用图形符号以
描绘系统里面的每个部件。
5.数据流图的基本四种成分:数据输入的源点和数据输出汇点、、
和。
6.结构化分析方法是面向________________进行需求分析的方法。
结构化分析方法使
用________________与________________来描述。
7.是自动地共享类、子类和对象中的方法和数据的机制。
8.软件详细设计工具可分为3类,即________________、________________和
________________。
9.为了在软件开发过程中保证软件的质量,主要采取下述措施:________________、
复查和管理复审、________________。
10.大型软件测试包括、、确认测试和
四个步骤。
二、单项选择题(每小题2分,共20分)
1.软件设计中划分模块的一个准则是()。
A、低内聚低耦合
B、低内聚高耦合
C、高内聚低耦合
D、高内聚高耦合
2.Jackson设计方法是由英国的M. Jackson提出的,它是一种面向()的软件
设计方法。
A、对象
B、数据流
C、数据结构
D、控制结构
3.试判断下列叙述中,哪个(些)是正确的( )。
a、软件系统中所有的信息流都可以认为是事务流
b、软件系统中所有的信息流都可以认为是变换流
c、事务分析和变换分析的设计步骤是基本相似的
A、a
B、b
C、c
D、b和c
4.()是用户和设计交换最频繁的方法。
A、原型化方法
B、瀑布模型方法
C、螺旋模型方法
D、构件组装模型
5.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施
的主要保证是( )。
A、硬件环境
B、软件开发的环境
C、软件开发工具和软件开发的环境
D、开发人员的素质
6.20世纪50年代以来,出现了许多不同的程序设计语言,下列语言中哪个语言是低
级语言( )。
A、PASCAL
B、 VISUAL BASIC
C、 C++
D、汇编语言
7.软件测试的目的是?( )
A、证明软件的正确性
B、找出软件系统中存在的所有错误
C、证明软件系统中存在错误
D、尽可能多的发现软件系统中的错误
8.使用白盒测试方法时,确定测试数据应根据()和指定的覆盖标准。
A、程序的内部逻辑
B、程序的复杂程度
C、该软件的编辑人员
D、程序的功能
9.软件维护工作的最主要部分是( )。
A、校正性维护
B、适应性维护
C、完善性维护
D、预防性维护
10.PDL是()语言。
A、高级程序设计语言
B、伪码式
C、中级程序设计语言
D、低级程序设计语言
三、判断题(正确的在括号内打上“√”,错误的打上“×”。
每题2分,共20分)
1.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。
()
2.发现错误多的程序模块,残留在模块中的错误也多。
()
3.为了加快软件维护作业的进度,应尽可能增加维护人员的数目。
()
4.软件维护就是改正软件中的错误。
()
5.质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有组
织的活动。
()
6.软件开发的主要任务是写程序。
()
7.测试只能证明程序有错误,不能证明程序没有错误。
()
8.模块化程序设计中,模块越小,模块化的优点越明显。
一般来说,模块的大小都
在10行以下。
()
9.在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要像写软
件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排,等等。
()
10.程序设计风格指导原则提出,尽量多使用临时变量。
()
四、简答题(每题5分,共20分)
1.什么是软件工程?
2.耦合性和内聚性有几种类型? 其耦合度、内聚强度的顺序如何?
3.简述需求分析工作可以分成哪四个方面?软件需求分析的有哪三个基本原则?
4.什么是黑盒测试法?
五、程序设计与算法描述题(共15分)
1.根据下面的伪代码程序,完成相应要求。
(8分)
START
IF C1
THEN
WHILE C2 DO
f
ENDDO
ELSE
BLOCK
g
p
ENDBLOCK
ENDIF
REPEAT UNTIL C3
q
r
ENDREP
STOP
1)画出程序流程图(4分)
2)用N—S图描述(4分)
2.有下列伪码程序:
START
INPUT (M,N)
IF M>=10
THEN X=10
ELSE X=l
ENDIF
IF N>=20
THEN Y=20
ELSE Y=2
ENDIF
PRINT(X,Y)
STOP
设计该程序的语句覆盖和路径覆盖测试用例。
(7分)
《软件工程》模拟卷A参考答案
一、填空题(每空1分,共25分)
1、可行性研究需求分析运行与维护
2、系统软件支撑软件应用软件
3、经济可行性法律可行性
4、物理系统黑盒子形式
5、加工数据流数据存储文件
6、数据流数据流图DFD 数据字典DD
7、继承性
8、图示工具、设计语言表格工具
9、审查测试
10、单元测试集成测试系统测试
二、单项选择题(每小题2分,共20分)
1 2 3 4 5
C C C A C
6 7 8 9 10
D D A C B
三、判断题(正确的在括号内打上“√”,错误的打上“×”。
每题2分,共20分)
1—5:×√××√6—10:×√×××
四、简答题(每题5分,共20分)
1、答:软件工程是指导计算机软件开发和维护的工程学科。
采用工程的概念、原理、
技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够
得到的最好的技术方法结合起来。
2、答:低:非直接耦合→数据耦合→标记耦合→控制耦合→外部耦合→公共耦合
→内容耦合:高
强:功能内聚→信息内聚→通信内聚→过程内聚→时间内聚→逻辑内聚→
巧合内聚:弱
3、答:需求分析阶段分成四个方面:对问题的识别、分析与综合、制定规格说明和评
审。
三个基本原则:必须能够表达和理解问题的数据域和功能域;必须按自顶向下、逐步分解的方式对问题进行分解和不断细化;要给出系统的逻辑视图和物理视图。
4、答:黑盒测试法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程,
它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收
输入数据,产生正确地输出信息。
五、分析设计题(共15分)
1、(1)程序流程图如下:4分
(2)N-S图如下:4分
2、(7分)
设计该程序的语句覆盖和路径覆盖测试用例。
①M=9(或<l0),N=l9(或<20);
②M=l0(或>=10),N=20(或>=20) 路径覆盖的测试用例为
①M=9,N=19;②M=9、N=20;
③M=l0,N=l9;
④M=10,N=20。