参考答案及评析5.doc

  1. 1、本文档共53页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
参考答案及评析5

参考答案及评析4 一、选择题 (1)D 评析:一个算法的空间复杂度,一般是指执行这个算法所需的内存空间。 一个算法所占用的存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行过程中所需要的额 外空间。 (2)D 评析:栈是限定在一端进行插入与删除的线性表。 栈是按照“先进后出”的或“后进先出”的原则组织数据的,因此,栈也被称为“先进后出”表或“后进先出”表。 (3)C 评析:所谓满二叉树是指除最后一层外,每层上的所有结点都有两个子结点。也就是说,在满二叉树中,每一层上的结 点数都达到最大值,即在满二叉树的第K层上有2K-1个结点,且深度为m的满二叉树有2m个结点。 在满二叉树中,最后一层的结点个数就是叶子结点的个数,本题中深度为5,故叶子结点数为25-1=24=16。 (4)A 评析:要形成良好的程序设计风格,主要应注重和考虑下述一些因素:符号名的命名应具有一定的实际含义,以便于对 程序功能的理解;正确的注释能够帮助读者理解程序;程序编写应优先考虑清晰性,除非对效率有特殊要求,程序编写 要做到清晰第一,效率第二。 (5)A 评析:对象是由数据和容许的操作组成的封装体,与客观实体有直接的对应关系。对象之间通过传递消息互相联系,以 模拟现实世界中不同事物彼此之间的联系。 (6)D 评析:软件工程包括3 个要素,即方法、工具和过程。 (7)B 评析:程序流程图(PFD)是一种传统的、应用广泛的软件过程设计表示工具,通常也称为程序框图,其箭头代表的是 控制流。 (8)A 评析:在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的 阶段是数据库系统。 (9)B 评析:层次模型是最早发展出来的数据库模型。它的基本结构是树形结构,这种结构方式在现实世界中很普遍,如家族 结构、行政组织机构,它们自顶向下、层次分明。 (10)B 评析:关系数据库管理系统能实现的专门关系运算,包括选择运算、投影运算、连接运算。 (11)D 评析:由于赋值语句是由赋值表达式加分号构成,所以选项A、B 均不是合法的赋值语句;选项C 中,存在两种运算符: 逗号运算符和赋值运算符,其中赋值运算符的优先级高,选项C 也不是。 (12)B 评析:“%”是求余运算符,所以if 判断语句中实际是指出只有当y 可以被3 整除时方可以继续;--y 是先进行y 的自减 运算,再使用y 值。所以,最后的打印结果应当为“852”。 (13)B 评析:C 语言规定标识符只能由字母、数字和下划线3 种字符组成,且第一个字符必须为字母或下划线。 (14)C 评析:a++是先使用a 值再将a 的值加1,b--是先使用b 的值再将b 的值减1,所以题中的逻辑运算表达式的值应当为真, 即为1,而经过运算后,a 和b 的值已经分别变成0 和3 了。 (15)C 评析:预处理功能主要有以下三种:宏定义、文件包含和条件编译,所以A 不正确。预处理不是C 语句,所以B 不正 确。预处理命令是由ANSI C 统一规定的,编译程序不能识别它们,D也不正确。 (16)C 评析:本题的考查点是根据程序写出数学函数关系。 题中的两个判断语句实际上指出了y 取值的条件,即是当x 大于零时y 取1;当x 小于零时y 取0;当x 等于零时y 值不 变,为-1。 (17)D 评析:本题的考查点是运算符在表达式中的处理原则。 本题中把y+z 的值赋给x,由于y 和z 都等于0,所以x 的值也为0,表达式值为false,输出####。if 语句中if 后面的表 达式一般为逻辑或关系表达式,但也可以是任意的数值类型。 (18)A 评析:在一个整常量后面加一个字母l 或L,则认为是long int 型常量。 (19)A 评析:本题的考查点是while( )循环语句。 本题首先要注意的是对*y++的运算,由于++和*为同一优先级别,且结合方向为自右向左,因此它相当于*(y++)。 由于++在y 的右侧,是“后加”,因此先对y 的原值进行*运算,然后使y 的值改变。 (20)C 评析:本题表达式中优先级顺序从高到低为括号、+、、|、。 (21)A 评析:由于字符“5”和“3”的ASCII 码相差为2,所以ch1 经过运算后的值应为65+2=67;同理,ch2 经过运算后的值 应为65+3=68,即是字符“D”。 (22)B 评析:第一个表达式中,运算的方向是从左至右,所以a 的值为2;第二个表达式中,等式右边是一个逻辑表达式,由 于结果为真,所以表达式的值为1,即b 为1。 (23)D 评析:赋值表达式的左侧不能为常量或表达式,所以D是非法的表达式。 (24)B 评析:NULL 在C 编译器中是一个值为0 的常量,它的定义在头文件“stdio.h”中,本题的程序在一开始就

文档评论(0)

nhdx010 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档