2018年9月计算机二级C语言考试章节习题及答案(1)
第1章 程序设计基本概念
1.1 程序和程序设计
1[单选题] 以下叙述中错误的是( )。
A.C语言源程序经编译后生成后缀为.obj的目标程序
B.C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件
C.用c语言编写的程序称为源程序,它以ASCIl代码形式存放在一个文本文件中
D.C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令
参考答案:D
参考解析:并不是源程序中的所有行都参加编译。在条件编译形式下,相关内容只在满足一定条件时才进行编译。选项D)中的非执行语句不在其范围内。
2[单选题] 有以下程序:
程序运行后的输出结果是( )。
A.197
B.143
C.33
D.28
参考答案:B
参考解析:宏定义又称为宏代换,格式为”#define标识符字符串”,其中的标识符就是所谓的符号常量,也称为”宏名”,宏的预处理工作也叫做宏展开,即将宏名替换为字符串。本题中把S(k+j)替换成4*(k+j)* k+j+1,计算结果为l43。
3[单选题] 若有以下程序段:
输出结果是( )。
A.2
B.4
C.8
D.16
参考答案:B
参考解析:9用二进制表示为1001,右移1位后为0100,即十进制4。
4[单选题] 下列描述中正确的是( )。
A.算法是指对解题方案的准确而完整的描述
B.算法的有穷性是指算法程序的长度是有限的
C.算法是否有效与拥有的情报无关
D.算法的基本特征有可行性、确定性和有穷性
参考答案:A
参考解析:算法是指对解题方案的准确而完整的描述。算法具有4个特征:可行性、确定性、有穷性和拥有足够的情报。有穷性指算法必需在有限时间内做完,即算法必需能在执行有限个步骤之后终止。当算法拥有足够的情报时,此算法才是有效的;而当提供的情报不够时,算法可能无效。
5[单选题] 下列数据结构中属于非线性结构的是( )。
A.队列
B.线性表
C.二叉树
D.栈
参考答案:C
参考解析:线性结构满足两个条件:有且只有一个根结点;每个结点最多只有一个前件,也最多只有一个后件。栈、队列、线性表都属于线性结构,二叉树是一种非线性结构,因为除叶子结点外,每个结点都有两个后件,不满足线性结构的条件。
6[单选题] 4个元素A、B、C、D依次入栈,入栈过程中允许栈顶元素出栈,假设某一时刻栈的状态是C(栈顶)、B、A(栈底),则不可能的出栈顺序是( )。
A.D、C、B、A
B.C、B、D、A
C.C、A、D、B
D.C、D、B、A
参考答案:C
参考解析:栈的特点是先进后出,所以后入栈的最先出栈。在栈的状态是c(栈顶)、B、A(栈底)时,D未入栈,栈顶元素可以出栈,但A不可能比B先出栈,所以c选项错误。
7[单选题] 下面概念中,不属于面向对象方法的是( )。
A.对象
B.继承
C.类
D.过程调用
参考答案:D
参考解析:类是指具有共同属性、共同方法的对象的集合,所以类是对象的抽象,对象是对应类的一个实例。继承是指能够直接获得已有的性质和特征,而不必重复定义它们。所以选项A、B、C属于面向对象方法,选项D属于面向过程方法。
8[单选题] 下列选项中属于软件生命周期开发阶段任务的是( )。
A.可行性研究
B.需求分析
C.详细设计
D.软件维护
参考答案:C
参考解析:软件生命周期可分为软件定义、软件开发和软件运行维护3个阶段。软件开发期包括概要设计、详细设计、实现和测试4个阶段。
9[单选题] 软件设计中衡量模块独立性的度量标准是( )。
A.抽象和信息隐蔽
B.局部化和封装化
C.内聚性和耦合性
D.激活机制和控制方法
参考答案:C
参考解析:耦合性与内聚性是模块独立性的两个定性标准,耦合与内聚是相互关联的。在程序结构中,各模块的内聚性越强,则耦合性越弱。一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。
10[单选题] 下列不属于过程设计工具中图形工具的是( )。
A.N—S
B.PAD
C.程序流程图
D.DFD
参考答案:D
参考解析:常用的过程设计工具有图形工具(程序流程图、N-S图、PAD图、HIPO)、表格工具(判定表)、语言工具(PDL)。
11[单选题] 下列叙述中错误的是( )。
A.数据库管理系统是数据库的核心
B.数据库系统由数据库、数据库管理系统、数据库管理员三部分组成
C.数据共享最好的是数据库系统阶段
D.数据库中的数据独立于应用程序而不依赖于应用程序
参考答案:B
参考解析:数据库管理系统是数据库系统的核心,它位于用户和操作系统之间,属于系统软件。数据库系统由数据库、数据库管理系统、数据库管理员、硬件平台和软件平台五部分组成。数据库技术的发展经历了3个阶段,人工管理、文件系统和数据库系统,数据共享最好的是数据库系统阶段,数据库中的数据独立于应用程序而不依赖于应用程序。
12[单选题] 如图所示,两个关系R1和R2:
则由关系R1和R2得到关系R3的操作是( )。
A.笛卡尔积
B.连接
C.交
D.除
参考答案:B
参考解析:连接运算也称0连接,是对两个关系进行运算,其意义是从两个关系的笛卡尔积中选择满足给定属性间一定条件的那些元组。本题关系R3为关系R1中B属性和关系R2中D属性相等连接而成。记
13[单选题] 在下列选项中,哪个不是一个算法一般应该具有的基本特征( )。
A.无穷性
B.可行性
C.确定性
D.有穷性
参考答案:A
参考解析:作为一个算法,一般应具有以下几个基本特征:可行性、确定性、有穷性、拥有足够的情报。本题答案为A)。
14[单选题] 下列关于栈的叙述中正确的是( )。
A.在栈中只能插入数据,不能删除数据
B.在栈中只能删除数据,不能插入数据
C.栈是先进后出(FILO)的线性表
D.栈是先进先出(FIFO)的线性表
参考答案:C
参考解析:栈是限定在一端进行插入与删除的线性表。栈是按照“先进后出”的或后进先出的原则组织数据的,因此,栈也被称为“先进后出”表或“后进先出”表。本题答案是C)。
15[单选题] 设有下列二叉树:
对此二叉树中序遍历的结果为( )。
A.ACBDEF
B.DEBFCA
C.ABDECF
D.DBEAFC
参考答案:D
16[单选题] 下面描述中,符合结构化程序设计风格的是( )。
A.使用顺序、选择和重复(循环.三种基本控制结构表示程序的控制逻辑
B.模块只有一个入口,可以有多个出口
C.注重提高程序的执行效率
D.不使用goto语句
参考答案:A
参考解析:结构化程序设计方法的四条原则是:自顶向下。程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标逐步求精。对复杂问题,应设计一些子目标,作过渡,逐步细节化、模块化。一个复杂问题,肯定是由若干稍简单的问题构成;解决这个复杂问题的程序,也应对应若干稍简单的问题,分解成若干稍小的部分。 限制使用goto语句。
本题答案为A)。
17[单选题] 软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是( )。
A.概要设计
B.软件设计
C.可行性研究和计划制定
D.需求分析
参考答案:D
参考解析:通常,将软件产品从提出、实现、使用维护到停止使用、退役的过程称为软件生命周期。也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。软件生命周期的主要活动阶段为:可行性研究和计划制定。确定待开发软件系统的开发目标和总的要求,给出它的功能、性能、可靠性以及接口等方面的可能方案,制定完成开发任务的实施计划。 需求分析。对待开发软件提出的需求进行分析并给出详细定义,即准确地确定软件系统的功能。编写软件规格说明书及初步的用户手册,提交评审。
软件设计。系统设计人员和程序设计人员应该在反复理解软件需求的基础上,给出软件的结构、模块的划分、功能的分配以及处理流程。
软件实现。把软件设计转换成计算机可以接受的程序代码。即完成源程序的编码,编写用户手册、操作手册等面向用户的文档,编写单元测试计划。
软件测试。在设计测试用例的基础上,检验软件的各个组成部分。编写测试分析报告。
运行和维护。将已交付的软件投入运行,并在运行使用中不断地维护,根据新提出的需求进行必要而且可能的扩充和删改。
本题答案是D)。
18[单选题] 关系表中的每一横行称为一个( )。
A.字段
B.元组
C.行
D.码
参考答案:B
参考解析:在关系数据库中,关系模型采用二维表来表示,简称“表”。二维表由表框架及表元组组成。在表框架中,按行可以存放数据,每行数据称为元组。本题答案是B。
19[单选题] 关系数据库管理系统能实现的专门关系运算包括( )。
A.选择、投影、连接
B.排序、查找、统计
C.关联、更新、排序
D.显示、打印、制表
参考答案:A
参考解析:关系数据库管理系统能实现的专门关系运算,包括选择运算、投影运算、连接运算。本题答案为A)。
20[单选题] 数据库概念设计的过程中,以下各项中不属于视图设计设计次序的是( )。
A.自顶向下
B.由整体到个体
C.由内向外
D.由底向上
参考答案:B
参考解析:数据库概念设计的过程中,视图设计一般有三种设计次序,它们是: 自顶向下。这种方法是先从抽象级别高且普遍性强的对象开始逐步细化、具体化与特殊化。
由底向上。这种设计方法是先从具体的对象开始,逐步抽象,普遍化与一般化,最后形成一个完整的视图设计。由内向外。这种设计方法是先从最基本与最明显的对象着手逐步扩充至非基本、不明显的其他对象。本题答案为B)。
编辑推荐:
温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)
点击加载更多评论>>