合肥工业大学 软件构造随堂测试

===== 期中测试 1- 3 =====

C++ 为什么没有Finally?

A.因为有try-catch就能解决问题
B.因为不存在垃圾回收
C.因为内部会自动执行垃圾回收
D. 因为有析构函数
 

在编程时启用断言起什么作用?

A.跟踪代码运行的状态
B.调试代码时获取变量具体的值
C.判断程序运行在某个时间点是否正确
D.单元测试的验证点
注意:D也对
 

在面向对象编程中,我们慎用哪种继承?

A.从基类继承
B.从派生类再继承
C.接口集成
D.实现继承
 

在设计时尽量要做到下列哪种耦合性?

A.控制耦合 
B.公共环境耦合 
C.内容耦合 
D.数据耦合
 

下列哪几种内聚性是不可取的?

A.过程内聚性
B.顺序内聚性
C.偶然内聚性
D.功能内聚性
E.逻辑内聚性
F.通讯内聚性
 

下列哪几种内聚性是最应该优先考虑的?

A.过程内聚性
B.顺序内聚性
C.偶然内聚性
D.功能内聚性 
E.逻辑内聚性
F.

通讯内聚性

 

 

从系统是否关键,把软件应用系统分为三类,它们分别是:

A.性命攸关的系统
B.非常关键的系统
C.关键的系统
D.使命攸关的系统
E.一般商业系统
 

当我们讲解防御式编程重要性时,首先提到了什么?

A.墨菲法则
B.抽象
C.隐喻
D.实例化
解释:如果会变坏,一定会变坏,防患于未然
 

模块耦合性,最不可取的是哪一种?

A.控制耦合
B.公共环境耦合 
C.内容耦合
D.数据耦合
 

当我们讨论构建软件时提到狗窝、大楼,这里用的什么概念? 

A.墨菲法则
B.抽象
C.隐喻
D.实例化
 
===== 4 - 5 =====

表驱动法,我们主要介绍了几种快速从表中查询条目的方法?

A.3
B.4
C.5
D.6
解释:大概是数组(数组下标(较小且连续的数字)-值)、map(key-value)、范围表(key-一段区域) 具体名字忘了
 

我们强调变量的声明和初始化的位置,着重考虑代码的:

A.可读性
B.可维护性
C.复用性
D.容错性
 

变量与数值绑定的时间总共有几种?

A.4
B.5
C.6
D.7
 

在变量使用时,我们提倡什么哲学?

 
A.方便哲学
B.形而上学
C.知识管理哲学
D.西方哲学
 

我们在使用变量时,尽量做到

A.增大变量的作用域
B.减少变量的作用域
C.使变量引用局部化
D.延长变量的存活时间
E.缩短变量的存活时间
 

变量初始化原则要求:

A.在程序一开始就声明变量
B.在程序一开始就声明变量并初始化变量
C.就在初始化变量时声明变量
D.就在第一次使用变量时初始化变量和声明变量
 

最早指出GOTO有害的科学家是: 

A.Edsger Dijkstra
B.Donald Knuth 
C.Dennis Ritchie
D.James Gosling
吐槽:这就是那个提出Dijkstra算法的猛人
 

在编程中,循环容易出现的错误主要有:

A.忽略或错误地对循环执行初始化
B.不正确的嵌套
C.不正确的循环终止
D.忽略或者错误地增加了循环变量的值 
E.用不正确的循环下标访问数组元素
 

循环内务操作是指

A.循环体占用内存的处理
B.循环体内所有语句执行的操作
C.循环内部事务的处理
D.控制循环变量的那部分操作 
 

写循环语句,要注意合理的选择和检查,主要指

A.从性能考虑选择合理的循环结构/类型
B.设定好循环次数
C.检查能否进入循环
D.检查能否退出循环
 

按照讲义,循环语句类型总共有几种?

A.3
B.4
C.5
D.6
 

if-then-else 语句编写的原则

A.先写正常代码路径, 再写异常代码路径
B.正常代码路径和异常代码路径交替进行
C.先写异常代码路径, 再写正常代码路径
D.把异常代码路径作为防卫语句处理
 

按照我们的讲义(教材),总共有几种语句结构?

A.3
B.4
C.5
D.6
吐槽:都认为是三个,重点是“讲义”上是五个,-_-||
   顺序、循环、分支、 goto、递归
 
===== 6 - 7 =====

按照我们教材/讲义,重构有几种类型?

A.4
B.

5

C.6
D.7
 

传统的开发者测试主要指下列哪几种测试?

A.单元测试
B.集成测试
C.系统测试
D.验收测试
吐槽:系统测试明明和他们出现在了一起,却不是开发者测试...
解释:系统测试一般不是有开发者完成,而是测试人员完成
 

在会议评审中,下列哪两项活动是可选的?

A.计划
B.预备会
C.参见评审人准备
D.会议
E.跟踪
F.修改发现的问题
G.再次举行会议
吐槽:书上书的是“预备”,我以为就是预备会了,好吧结果不是。老师上课讲的是会议上不要谈修改,只是指出错误,这个选项应该是说你要在会议之后修改错误,算在了整个流程当中...课上认真听的基本错了,-_-||

 

下列哪几项是正确的结对编程原则?

A.不要强迫软件工程师进行
B.配对自由
C.避免两个新手结对
D.经常轮换结对的工程师
吐槽:书上说的是要定时轮换工程师,“定时”的意识不是十天半个月,估计是以季度算的...所以错了
 

结对编程是下列哪种敏捷开发模式的主要实践之一?

A.BDD-行为驱动开发
B.FDD-特性驱动开发
C.Scrum
D.XP-极限编程
 

不包括工具静态分析,人工代码评审常有哪几种相对正式的形式?

A.2
B.3
C.4
D.5
 

在协同构建中,我们重点讨论了哪几项内容

A.沟通
B.代码评审
C.代码集体所有
D.结对编程
 

下列哪种形式化语言属于基于代数和逻辑的方法的?

A.B语言
B.Larch语言
C.VDM
D.Z语言
 

下列哪几种形式化语言属于基于模型的方法的?

A.B语言
B.Larch语言
C.VDM
D.Z语言
 

下列哪种形式化语言是由麻省理工学院开发的?

A.B语言
B.Larch语言
C.VDM
D.Z语言
 

形式文法记作G = {V, T, S , P },图灵机则用七元组{Q,Σ,Γ,δ,q0, qaccept, qreject}表示,那么下列哪句描述是正确的? 

A.形式文法记中的P相当于图灵机七元组的Q
B.形式文法记中的P相当于图灵机七元组的Σ
C.形式文法记中的P相当于图灵机七元组的Γ
D.形式文法记中的P相当于图灵机七元组的δ
E.形式文法记中的P相当于图灵机七元组的q0
 

形式文法记作G = {V, T, S , P },图灵机则用七元组{Q,Σ,Γ,δ,q0, qaccept, qreject}表示,那么下列哪句描述是正确的?

A.形式文法记中的S相当于图灵机七元组的Q
B.形式文法记中的S相当于图灵机七元组的Σ
C.形式文法记中的S相当于图灵机七元组的Γ
D.形式文法记中的S相当于图灵机七元组的δ
E.形式文法记中的S相当于图灵机七元组的q0
 

形式文法记作G = {V, T, S , P },图灵机则用七元组{Q,Σ,Γ,δ,q0, qaccept, qreject}表示,那么下列哪句描述是正确的?

A.形式文法记中的V相当于图灵机七元组的Q
B.形式文法记中的V相当于图灵机七元组的Σ
C.形式文法记中的V相当于图灵机七元组的Γ
D.形式文法记中的V相当于图灵机七元组的δ
 

图灵机由一个七元组{Q,Σ,Γ,δ,q0, qaccept, qreject}组成,下列哪一项代表δ?

A.读写头能写的字符
B.无限长的纸带TAPE上的字符集
C.控制规则表
D.状态寄存器保存的当前状态
 

图灵机由一个七元组{Q,Σ,Γ,δ,q0, qaccept, qreject}组成,下列哪一项代表Σ?

A.读写头能写的字符
B.无限长的纸带TAPE上的字符集
C.控制规则表
D.状态寄存器保存的当前状态
 

图灵机由一个七元组{Q,Σ,Γ,δ,q0, qaccept, qreject}组成,下列哪一项代表Q?

A.读写头能写的字符
B.无限长的纸带TAPE上的字符集
C.控制规则表
D.状态寄存器保存的当前状态

转载于:https://www.cnblogs.com/zircon/p/8337566.html

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值