一、选择题(1)~(35)每小题2分,共70分) 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。 (1)在计算机中,算法是指_______。 A)查询方法 B)加工方法 C)解题方案的准确而完整的描述 D)排序方法 答案:C 评析:计算机算法是指解题方案的准确而完整的描述,它有以下几个基本特征:可行性、确定性、有穷性和拥有足够的情报。 (2)栈和队列的共同点是_______。 A)都是先进后出 B)都是先进先出 C)只允许在端点处插入和删除元素 D)没有共同点 答案:C 评析:栈和队列都是一种特殊的操作受限的线性表,只允许在端点处进行插入和删除。二者的区别是:栈只允许在表的一端进行插入或删除操作,是一种"后进先出"的线性表;而队列只允许在表的一端进行插入操作,在另一端进行删除操作,是一种"先进先出"的线性表。 (3)已知二叉树BT的后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列 是_______。 A)cedba B)acbed C)decab D)deabc 答案:A 评析:二叉树BT的后序遍历序列为dabec,故BT的根结点为c(后序遍历序列的最后一个结点为数的根结点);而BT的中序遍历序列是debac,即遍历序列中最后一个结点为跟结点,说明BT的右子树为空。由BT的的后序遍历序列和中序遍历序列可知BT的左子树(LST)的后序遍历序列和中序遍历序列分别为dabe和deba(树是递归定义的):故LST的根结点是e,在由LST的中序遍历序列可知其左子树为d。因此BT的前序遍历序列为cedba。 (4)在下列几种排序方法中,要求内存量最大的是_______。 A)插入排序 B)选择排序 C)快速排序 D)归并排序 答案:D 评析:快速排序的基本思想是,通过一趟排序将待排序记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,再分别对这两部分记录继续进行排序,以达到整个序列有序;插入排序的基本操作是指将无序序列中的各元素依次插入到已经有序的线性表中,从而得到一个新的序列;选择排序的基本思想是:扫描整个线性表,从中选出最小的元素,将它交换到表的最前面(这是它应有的位置),然后对剩下的子表采用同样的方法,直到表空为止;归并排序是将两个或两个以上的有序表组合成一个新的有序表。 (5)在设计程序时,应采纳的原则之一是_______。 A)程序结构应有助于读者理解 B)不限制goto语句的使用 C)减少或取消注解行 D)程序越短越好 答案:A 评析:滥用goto语句将使程序流程无规律,可读性差;添加的注解行有利于对程序的理解,不应减少或取消;程序的长短要依照实际需要而定,并不是越短越好。 (6)下列不属于软件调试技术的是_______。 A)强行排错法 B)集成测试法 C)回溯法 D)原因排除法 答案:B 评析:调试的关键在于推断程序内部的错误位置及原因。主要的调试方法有强行排错法、回溯法和原因排除法。
|