
2022年全国计算机二级公共基础知识习题集.pdf
12页习题集第一部分数据结构与算法一选择题1. 算法的时间复杂度是指 _A)执行算法程序所需要的时间B)算法程序的长度C)算法执行过程中所需要的基本运算次数D)算法程序中的指令条数2. 算法的空间复杂度是指 _A)算法程序的长度B)算法程序中的指令条数C)算法程序所占的存储空间D)算法执行过程中所需要的存储空间3. 数据的存储结构是指 _A)数据所占的存储空间量B)数据的逻辑结构在计算机中的表示C)数据在计算机中的顺序存储方式D)存储在外存中的数据4. 算法一般都可以用哪几种控制结构组合而成_A) 循环、分支、递归B) 顺序、循环、嵌套C) 循环、递归、选择D) 顺序、选择、循环5. 在下列选项中,哪个不是一个算法一般应该具有的基本特征_A) 确定性A) 查询方法B) 加工方法D) 排序方法7. 数据结构中,与所使用的计算机无关的是数据的_A) 存储结构B) 物理结构C) 逻辑结构B) 可行性C) 无穷性D) 拥有足够的情报6. 在计算机中,算法是指 _ C) 解题方案的准确而完整的描述D) 物理和存储结构8. 算法分析的目的是 _A) 找出数据结构的合理性B) 找出算法中输入和输出之间的关系C) 分析算法的易懂性和可靠性D) 分析算法的效率以求改进9. 下列叙述中正确的是 _。
A)线性表是线性结构B)栈与队列是非线性结构C)线性链表是非线性结构D)二叉树是线性结构10. 下列关于队列的叙述中正确的是_A)在队列中只能插入数据B)在队列中只能删除数据C)队列是先进先出的线性表D)队列是先进后出的线性表11. 下列关于栈的叙述中正确的是_A)在栈中只能插入数据B)在栈中只能删除数据C)栈是先进先出的线性表D)栈是先进后出的线性表12. 下面叙述正确的是 _A)算法的执行效率与数据的存储结构无关B)算法的空间复杂度是指算法程序中指令(或语句)的条数(指的是算法所占用的空间)C)算法的有穷性是指算法必须能在执行有限个步骤之后终止D)以上三种描述都不对13. 以下数据结构中不属于线性数据结构的是_A) 队列B) 线性表C) 二叉树D) 栈14. 下列叙述中正确的是 _A) 线性表是线性结构C) 线性链表是非线性结构A)在队列中只能插入数据B)在队列中只能删除数据B) 栈与队列是非线性结构D) 二叉树是线性结构 15. 下列关于队列的叙述中正确的是_C)队列是先进先出的线性表D)队列是先进后出的线性表16. 下列关于栈的叙述中正确的是_A)在栈中只能插入数据B)在栈中只能删除数据C)栈是先进先出的线性表D)栈是先进后出的线性表17. 栈和队列的共同点是 _。
A) 都是先进后出B) 都是先进先出C) 只允许在端点处插入和删除元素D) 没有共同点18. 栈底至栈顶依次存放元素A、B、C、D,在第五个元素 E 入栈前,栈中元素可以出栈,则出栈序列可能是 _A) ABCED B) DBCEA C) CDABE D) DCBEA 19. 线性表的顺序存储结构和线性表的链式存储结构分别是_A) 顺序存取的存储结构、顺序存取的存储结构B) 随机存取的存储结构、顺序存取的存储结构C) 随机存取的存储结构、随机存取的存储结构D) 任意存取的存储结构、任意存取的存储结构20. 在单链表中,增加头结点的目的是_A) 方便运算的实现B) 使单链表至少有一个结点C) 标识表结点中首结点的位置D) 说明单链表是线性表的链式存储实现21. 用链表表示线性表的优点是_A) 便于插入和删除操作B) 数据元素的物理顺序与逻辑顺序相同C) 花费的存储空间较顺序存储少D) 便于随机存取22. 下列叙述中正确的是 _A)线性表是线性结构B)栈与队列是非线性结构C)线性链表是非线性结构D)二叉树是线性结构23. 数据的存储结构是指 _A)数据所占的存储空间量B)数据的逻辑结构在计算机中的表示C)数据在计算机中的顺序存储方式D)存储在外存中的数据24. 设有下列二叉树 : 对此二叉树中序遍历的结果为_。
A) ABCDEF B)DBEAFC C)ABDECF D) DEBFCA 25. 在深度为 5 的满二叉树中,叶子结点的个数为_A) 32 B) 31 C) 16 D) 15 26. 设树 T 的度为 4,其中度为 1,2,3,4 的结点个数分别为4,2,1,1 .则 T的叶子结点数为 _A) 8 B) 7 C) 6 D) 5 (提示:试探法画出图来)27. 在一棵二叉树上第5 层的结点数最多是 _A) 8 B) 16 C) 32 D) 351 D) 15 C) decab C) n D) deabc D) n+1 D) 15 28. 设一棵完全二叉树共有699 个结点,则在该二叉树中的叶子结点数为_ A) 349 A) 32 A) cedba A )n-1 B) 350 B) 31 C) 255 C) 16 29. 在深度为 5 的满二叉树中,叶子结点的个数为 _ 30. 已知二叉树后序遍历序列是dabec,中序遍历序列是 debac ,它的前序遍历序列是 _ B) acbed B ) n(n-1) 31. n个顶点的强连通图的边数至少有_ 32. 对长度为 N 的线性表进行顺序查找,在最坏情况下所需要的比较次数为_。
A) N+1 B) N C)(N+1)/2 D) N/2 33. 希尔排序法属于哪一种类型的排序法_ A)交换类排序法C) 选择类排序法A) N+1 B) 插入类排序法D) 建堆排序法C) (N+1)/2 D) N/2 34. 对长度为N 的线性表进行顺序查找,在最坏情况下所需要的比较次数为_ B) N 35. 在下列几种排序方法中,要求B) 选择排序C) 快速排序C) 快速排序D) 归并排序D)直接选择排序36. 已知数据表 A 中每个元素距其最终位置不远,为节省时间,应采用的算法是_ B) 直接插入排序第二部分程序设计基础一. 选择题1. 对建立良好的程序设计风格,下面描述正确的是_A)程序应简单、清晰、可读性好B)符号名的命名只要符合语法C)充分考虑程序的执行效率D)程序的注释可有可无2. 在设计程序时,应采纳的原则之一是_A) 程序结构应有助于读者理解B) 不限制 goto 语句的使用C) 减少或取消注解行D) 程序越短越好3. 下面描述中,符合结构化程序设计风格的是_A)使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B)模块只有一个入口,可以有多个出口(可以有0 个入口)C)注重提高程序的执行效率D)不使用 goto语句(只是限制使用)4. 结构化程序设计主要强调的是_。
A)程序的规模B)程序的易读性D)程序的可移植性C) 模块类型划分C) 口令D) 模块耦合度D) 消息 C) 程序的执行效率A)软件结构定义A)调用语句5. 信息隐蔽的概念与下述哪一种概念直接相关?_ B)模块独立性B)命令6. 在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送_7. 下面对对象概念描述错误的是_A)任何对象都必须有继承性B)对象是属性和方法的封装体C)对象间的通讯靠消息传递D)操作是对象的动态属性8. 下面概念中,不属于面向对象方法的是_) A)对象B)继承C)类D)过程调用9. 面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是_A) 模拟现实世界中不同事物之间的联系B) 强调模拟现实世界中的算法而不强调概念C) 使用现实世界的概念抽象地思考问题从而自然地解决问题D) 鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考10. 在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送_A)调用语句B)命令C)口令D)消息11. 下面对对象概念描述错误的是_ A)任何对象都必须有继承性B)对象是属性和方法的封装体C)对象间的通讯靠消息传递D)操作是对象的动态属性二填空题1. 源程序文档化要求程序应加注释。
注释一般分为序言性注释和_2. 结构化程序设计的三种基本逻辑结构为顺序、选择和_3. 与结构化需求分析方法相对应的是_方法4. 结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、_和限制使用goto 语句5. Jackson结构化程序设计方法是英国的M.Jackson提出的, 它是一种面向 _的设计方法6. 在面向对象方法中,信息隐蔽是通过对象的_性来实现的7. 类是一个支持集成的抽象数据类型,而对象是类的_8. 在面向对象方法中,类之间共享属性和操作的机制称为_9. 面向对象的程序设计方法中涉及的对象是系统中用来描述客观事物的一个_10. 一个类可以从直接或间接的祖先中继承所有属性和方法采用这个方法提高了软件的_11. 面向对象的模型中,最基本的概念是对象和_12. 在面向对象方法中,类之间共享属性和操作的机制称为_13. 在面向对象方法中,信息隐蔽是通过对象的_性来实现的第三章软件工程基础一. 选择题1. 下面不属于软件工程的3 个要素的是 _A)工具_A)概要设计A)抽象_A)概要设计B)详细设计C)可行性分析D)需求分析5. 需求分析阶段的任务是确定_ B)详细设计B)模块化C)可行性研究C)自底向上D)需求分析D)信息隐蔽 3. 下面不属于软件设计原则的是 _。
4. 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是B)过程C)方法D)环境 2. 在软件生命令周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是A) 软件开发方法B) 软件开发工具C) 软件开发费用D) 软件系统功能6. 软件开发的结构化生命周期方法将软件生命周期划分成_A)定义、开发、运行维护B) 设计阶段、编程阶段、测试阶段C) 总体设计、详细设计、编程调试D) 需求分析、功能定义、系统设计7. 下列工具中为需求分析的常用工具的是_A)PAD B)PFD C)N-S D)DFD 8. 软件需求分析阶段的工作,可以分为四个方面:需求获取,需求分析,编写需求规格说明书,以及 _A)阶段性报告B)需求评审C)总结D)都不正确9. 下列叙述中,不属于软件需求规格说明书的作用的是_A)便于用户、开发人员进行理解和交流B)反映出用户问题的结构,可以作为软件开发工作的基础和依据C)作为确认测试和验收的依据D)便于开发人员进行需求分析10. 在软件开发中,下面任务不属于设计阶段的是_A)数据结构设计B)给出系统模块结构C)定义模块算法D)定义需求并建立系统模型11. 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。
下列图符名标识的图符不属于数据流图合法图符的是_ A)控制流A)数据流B)加工B)控制流C)数据存储D)源和汇C)调用关系D)组成关系D) 程序编码D) PAD 图12. 程序流程图( PFD)中的箭头代表的是 _13. 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是_A) 可行性分析A) 数据流图A)详细设计A)详细设计B) 需求分析B) 数据字典C) 详细设计C) 判定树14. 下列不属于结构化分析的常用工具的是_15. 在结构化方法中,软件功能分解属于下列软件开发中的阶段是_B)需求分析B) 需求分析C)总体设计C)总体设计D)编程调试D)编程调试16. 在结构化方法中,软件功能分解属于下列软件开发中的阶段是_ 17. 在数据流图( DFD)中,带有名字的箭头表示_A)控制程序的执行顺序B)模块之间的调用关系C)数据的流向D)程序的组成成分18. 软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指 _A)模块间的关系B)系统结构部件转换成软件的过程描述C)软件层次结构D)软件开发过程19. 为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为_。
A)PAD 图A) 数据B)N-S 图C)结构图D)数据流图20. 数据处理的最小单位是_。
