2022年2022年计算机专业基础综合-试卷 4.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年2022年计算机专业基础综合-试卷 4.pdf》由会员分享,可在线阅读,更多相关《2022年2022年计算机专业基础综合-试卷 4.pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机专业基础综合(栈、队列和数组)- 试卷 1 ( 总分: 76.00 ,做题时间: 90 分钟 ) 一、单项选择题 ( 总题数: 21,分数: 42.00) 1. 单项选择题1-40 小题。下列每题给出的四个选项中,只有一个选项是最符合题目要求的。(分数:2.00 )_ 解析:2. 栈和队列的主要区别在于( ) 。(分数: 2.00 )A. 它们的逻辑结构不一样B. 它们的存储结构不一样C.所包含的运算不一样D.插入和删除运算的限定不一样解析:解析:栈和队列的逻辑结构都是线性的,都有顺序存储和链式存储,有可能包含的运算不一样,但不是其主要区别。任何数据结构在针对具体问题时所包含的运算都可能
2、不同。所以正确答案是D 。3. 若循环队列以数组Q0 m一 1 作为其存储结构,变量rear 表示循环队列中的队尾元素的实际位置,其移动按 rear=(rear+1)MOD m进行,变量length表示当前循环队列中的元素个数,则循环队列的队首元素的实际位置是 ( )。(分数: 2.00 )A.rear-length B.(rearlength+m)MOD m C.(teat一 length+1+m)MOD m D.m-length 解析:解析:按照循环队列的定义,因为元素移动按照rear=(rear+1)MOD m进行,则当数组Qm一 1 存放了元素之后,下一个入队的元素将存放到Q0 中,因
3、此队列的首元素的实际位置是(rear length+1+m)MOD m。4. 一个以向量Vn 存储的栈,其初始栈顶指针top 为 n+1,则对于 x,其正确的进栈操作是( )。(分数: 2.00 )A.top=top+1 ;Vtop=x B.Vtop=x;top=top+1 C.top=top-1;Vtop=x D.Vtop=x;top=top-1 解析:解析:此题考查的知识点是入栈的具体操作。操作时要看栈顶的地址,先取得空间,再入栈。本题栈顶为 n+1,应该用减法,所以选C。D 是先存入,破坏原有数据,所以错。5. 为了增加内存空间的利用率和减少溢出的可能性,两个栈可以共享一片连续的内存空间
4、,此时应将两栈的栈底分别设在 ( )。(分数: 2.00 )A. 内存空间的首地址B. 内存空间的尾地址C.内存空间的两端D.内存空间的中间解析:解析:两个栈共享一个内存空间时,需要把两个栈的栈底设在内存空间的两端。6. 已知输入序列为abcd,经过输出受限的双端队列后,能得到的输出序列是( ) 。(分数: 2.00 )A.dacb B.cadb C.dbca D.以上答案都不对名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - 解
5、析:解析:输出受限的双端队列是指删除限制在一端进行,而插入允许在两端进行的队列。分析选项 A,输入序列为 abcd, 输出序列为dacb, 由输出受限性质可知以da 开头的结果只有dabc, 选项 A为错误答案。分析选项 B,输入序列为abcd,输出序列为cadb,其输入输出顺序为:先在输出端输入a,然后在非输出端输入 b,这时队列中的序列为ba。再在输出端输入c,这时队列中的序列为bac;输出 c,再输出 a;再在输出端输入d,这时队列中的序列为bd;输出 d,再输出 b。最后得到输出序列为cadb。 分析选项 C,输入序列为 abcd, 输出序列为dbca, 由输出受限性质可知以db 开头
6、的结果只有dbac, 选项 C为错误答案。7. 假设一个序列1,2,3, n 依次进栈,如果出栈的第一个元素是n,那么第 i(1 i n)个出栈的元素是( )。(分数: 2.00 )A. 不确定B.n-i+l C.i D.n i 解析:解析:进栈的顺序是:1,2, n,且出栈的第一个元素是n,那么根据栈后进先出的特点可知,出栈的顺序依次为:n, 2,1,那么第 ni+1 个出栈元素就是第i 个进栈的元素。8. 假设一个序列1,2,3, n 依次进栈,如果第一个出栈的元素是i ,那么第 j 个出栈的元素是 ( ) 。(分数: 2.00 )A.i-j-1 B.i-j C.j-i+1 D.不确定的解
7、析:解析:此题考查的知识点是栈的后进先出特点。若输出序列的第一个元素是i ,只能说明前i 1 个元素均入栈,而第j 个元素何时入、出栈并不能确定,所以选D。9. 已知当前栈中有n 个元素,此时如果有新的元素需要执行进栈操作,但发生上溢,则由此可以判断,此栈的最大容量为 ( )。(分数: 2.00 )A.n 一 1 B.n C.n+1 D.n 2 解析:解析:由于栈中有n 个元素是执行进栈操作,但是发生上溢,则说明此栈中最多可以包含n 个数据元素,即栈的最大容量为n。10. 设有 5 个元素 a,b,c,d,e 顺序进栈,下列几个选项中,不可能的出栈序列是( )。(分数: 2.00 )A.a ,
8、b,c,d,e B.d ,e,c,b,a C.a ,c,e,b,d D.c ,b,a,d,e 解析:解析:由进栈出栈规则可知,对于a,b,c,d,e 顺序进栈的五个元素,A、B、D均为可能的出栈序列,所以选C。11. 有 6 个元素按 6,5,4,3,2,1 的顺序依次进栈,不合法的出栈序列是( ) 。(分数: 2.00 )A.543612 B.453126 C.346521 D.234156 解析:解析:此题考查的知识点是栈的后进先出特点。考查出栈序列,要保证先入栈的一定不能在后入栈的前面出栈, C 选项中的 6 在 5 前入栈, 5 没有出栈, 6 却出栈了,所以不合法。其他都符合规律。所
9、以选C。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - 12. 有 5 个元素,其入栈次序为A,B,C,D,E,在各种可能的出栈次序中,以元素C,D最先出栈的次序不包括 ( )。(分数: 2.00 )A.CDEBA B.CDBEA C.CDBAE D.CDAEB 解析:解析:以元素C,D最先出栈的次序有三个:CDEBA 、CDBEA 、CDBAE 。13. 对于 4 个元素依次进栈,可以得到( )种出栈序列。(分数: 2.00
10、)A.10 B.12 C.14 D.16 解析:解析: n 个入栈元素可得到种出栈序列。本题4 个元素,可有14 种出栈序列。14. 现有两栈,其共享空间为V1m,topi代表第 i 个栈 (i=1 ,2)栈顶,栈 1 的底在 V1 ,栈 2 的底在 Vm ,若两栈均采用顺序存储方式存储,则栈满的条件是( )。(分数: 2.00 )A. top2一 top1=0 B.top1+1=top2 C.top1+top2=m D.top1=top2 解析: 解析: 此题考查的知识点是入栈的具体操作。判断栈是否满要看两个栈顶是否相邻,当 top1+1=top2或 top21=top1时都表示栈满,所以选
11、B,而 A,C没有任何意义。D表示已经出现覆盖了,也是错的。15. 一个递归算法必须包括( ) 。(分数: 2.00 )A. 递归部分B. 终止条件和递归部分C.迭代部分D.终止条件和迭代部分解析:解析:此题考查的知识点是递归算法的组成部分。一个递归算法主要包括终止条件和递归部分,所以选 B。A 不全面, C、D不是递归算法。16. 执行完下列语句段后,i 值为 ( )。 int f(int x)return(x0)?x,x*f(x 1):2); i=f(f(1); (分数: 2.00 )A.2 B.4 C.8 D.无限递归解析:解析: 此题考查的知识点是递归算法的分析。根据题意可计算f(0)
12、=2 ,f(1)=2 ,f(2)=4 ,所以选 B。17. 表达式 a*(b+c) 一 d 的后缀表达式是 ( )。(分数: 2.00 )A.abcd*+ 一B.abe+*d C.abc*+d D.一+*abcd 解析:解析:此题考查的知识点是利用栈完成表达式的中后缀转换。顺序扫描表达式,操作数顺序输出,而运算符的输出顺序根据算术运算符的优先级确定。保证栈外运算符优先级比栈内低,若高则入栈,否则出栈输出。本题中输出顺序为a 输出, *进栈, ( 进栈, b 输出, +进栈, c 输出,此时 ) 低于 +,所以“ +”输名师资料总结 - - -精品资料欢迎下载 - - - - - - - - -
13、 - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - - - - - - - 出。“)”与“(”相等,出栈删除,一低于*,所以 * 出栈,此时输出序列为abe+*,一入栈,输出d,输出一,结束。所以选B。18. 为了处理参数及返回地址,在递归过程或函数调用时,要用一种称为( ) 的数据结构。(分数: 2.00 )A. 队列B. 多维数组C.栈D.线性表解析:解析:此题考查的知识点是栈的应用。要处理参数及返回地址,需要后进先出规则,应选C。A是先进先出规则, B是普通的存储结构,D是普通的逻辑结构。19. 若用一个大小为6 的数组来实
14、现循环队列,且当前rear 和 front的值分别为0 和 3,当从队列中删除一个元素,再加入两个元素后,rear 和 front的值分别为 ( ) 。(分数: 2.00 )A.1 和 5 B.2 和 4 C.4 和D.5 和 1 解析:解析:此题考查的知识点是队列的特征。此题考查顺序存取时的位置计算,按顺时针计算,所以删除 front+l,插入 rear+1 ,计算后 rear=2 ,front=4,应选 B 。20. 队尾已到达一维数组的最高下标,不能再插入元素, 然而队中元素个数小于队列的长度,这种现象称作( ) 。(分数: 2.00 )A. 上溢B. 下溢C.假溢出D.队列满解析:解析
15、:解析:用常规意义下顺序存储结构的一维数组表示队列,由于队列的性质( 队尾插入和队头删除) ,容易造成“假溢出”现象,即队尾已到达一维数组的高下标,不能再插入,然而队中元素个数却小于队列的长度 ( 容量 ) 。21. 已知有一维数组A0m n 一 1 ,若要对应为m行、 n 列的矩阵,将元素Ak(0 km n)表示成矩阵的第 i 行、第 j 列的元素 (0 i (分数: 2.00 )A.i=k n,j=k m B.i=k m ,j=k m C.i=k n,j=k n D.i=k m ,j=k n 解析:解析: 本题是求一维数组向二维数组转化的问题。最简单的方法是把数组A的第 0n 一 1 共
16、n 个元素放到数组 B 的第一行, 数组 A的第 n2n1 共 n 个元素放到数组B的第二行中, 依此类推, 数组 A的最后 n 个元素放到数组B 的最后一行中。求 Ak 在数组 B中的位置,应先确定Ak 处在哪一行,显然应该是 kn 行;然后再确定处在kn 行的哪一列,显然是kn。二、综合应用题 ( 总题数: 14,分数: 34.00) 22. 综合应用题41-47 小题。_ 解析:23. 简述栈、队列、循环队列的定义。(分数: 2.00 )_ 正确答案: ( 正确答案: (1) 栈是只准在一端进行插入和删除操作的线性表,允许插入和删除的一端叫栈顶,另一端叫栈底。最后插入的元素最先删除,故栈
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年计算机专业基础综合-试卷 2022 计算机专业 基础 综合 试卷
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内