正确答案:B
正确答案:B
试卷总分:100 得分:100
一、单选题 (共 20 道试题,共 40 分)
1.下面给出的四种排序方法中,排序过程中的比较次数与排序方法无关的是()。
A.选择排序法
B.插入排序法
C.快速排序法
D.堆积排序法
正确答案:B
2.已知某二叉树的后序遍历序列是dabec,中序遍历序列是deabc,它的前序遍历序列是( )
正确答案:B
A.acbed
B.deabc
正确答案:A
C.decab
正确答案:D
D.cedba
正确答案:A
3.以下选项中合法的字符常量是()。
A."B"
B.68
C.D
D.'\010'
正确答案:A
4.在有序表A[1..12]中,采用二分查找算法查等于A[12]的元素,所比较的元素下标依次为()。
A.5, 8, 10, 12
B.6, 9, 11, 12
C.4, 7, 9, 12
D.1, 4, 8, 12
正确答案:D
5.下列数据结果中,能够按照“先进后出”原则存取数据的是( )
正确答案:B
A.循环队列
B.栈
C.队列
D.二叉树
正确答案:A
6.strcat()函数是用来()。
A.字符串连接
B.比较字符
C.求子串
D.字符串拷贝
正确答案:B
7.注释从功能上可以分为()。
A.文件注释
B.函数注释
C.功能注释
D.以上全是
正确答案:C
8.数制也称计数制,是用一组固定的符号和统一的规则来表示()的方法。
A.数值
B.字母
C.文字
D.信息
正确答案:B
9.在数组A中a[0]到a[5]中分别存放一列数{5,4,0,3,1,2},使用简单选择排序法对其按照升序进行排序,第0趟比较后,进行交换的是()。
A.a[3]与a[2]
B.a[0]与a[2]
C.a[0]与a[1]
D.a[0]与a[3]
正确答案:B
10.有以下程序 #include <stdio.h> int f(int t[ ], int n ); main() { int a[4]={1, 2, 3, 4}, s; s=f(a, 4); printf("%d ", s); } int f(int t[ ], int n ) { if(n>0) return t[n-1]+f(t, n-1); else return 0; } 程序运行后的输出结果是()。
正确答案:B
A.4
B.10
C.14
D.6
正确答案:C
11.IDE (Integrated Development Environment) 集成开发环境,是专门用于程序开发环境的应用程序,一般包括()和图形用户界面工具。
正确答案:B
A.代码编辑器、编译器
B.代码编辑器、编译器、调试器
C.编译器、调试器
D.代码编辑器、编译器、调试器、集成开发环境
正确答案:B
12.二进制中最小的数码是()。
A.0
B.1
C.2
D.3
正确答案:B
13.下列排序算法中,其中()是稳定的。
A.堆排序,冒泡排序
B.快速排序,堆排序
C.直接选择排序,归并排序
D.归并排序,冒泡排序
正确答案:B
14.字符数组在进行指定初值时,若未指定数组长度,则长度()初值个数。
A.小于
B.等于
C.大于
D.不等于
正确答案:D
15.strrev("abcd")返回值为()。
正确答案:D
A."abcd"
正确答案:D
正确答案:D
B."dcba"
正确答案:C
C."cdab"
正确答案:A
D."ab"
正确答案:B
16.在下面的排序方法中,辅助空间为O(n)的是() 。
A.希尔排序
B.堆排序
C.选择排序
D.归并排序
正确答案:C
17.IDE的全程是()。
正确答案:A
A.集成开发环境
B.集成环境
C.开发软件
D.调试过程
正确答案:C
21.下列排序算法中,在每一趟都能选出一个元素放到其最终位置上,并且其时间性能受数据初始特性影响的是()。
A.直接插入排序
B.快速排序
C.直接选择排序
D.堆排序
正确答案:C
19.执行memset(s,'a',4)后,s的值为()。
A."aaaa"
B."a4"
C."4a"
D."eeee"
正确答案:A
20.在启发式搜索中,最重要的是() 。
A.对搜索位置进行评估
B.对搜索时间进行限定
C.对搜索速度进行控制
D.对搜索目标的设定
正确答案:A
东师《算法分析与设计》2023年春学期在线作业1[答案]多选题答案
正确答案:C
二、多选题 (共 4 道试题,共 16 分)
21.递归算法的执行过程分()和()两个阶段。
A.递归
B.递推
C.回归
D.回溯
正确答案:C
22.设计递归算法有两点最为关键()和()。
A.确定递推公式
B.确定边界(终了)条件(递归出口)
C.每次递归调用,都必须向基本条件前进
D.如果结果已知,那么,不用再重复调用递归
正确答案:A
23.顺序结构、选择结构、循环结构三种结构共同特点是()
A.只有一个入口
B.只有一个出口
C.结构内的每一部分都有机会被执行到(不存在死语句)
D.结构内不存在死循环(永远执行不完的循环)。
正确答案:A
24.字符串有关的格式字符有( )。
A."%c"
B."%d"
C."%f"
D."%s"
正确答案:A
三、判断题 (共 22 道试题,共 44 分)
25.在计算机上中有符号整数和无符号整数表示的数值范围是相同的。
26.递推实现的关键是找出递推公式。
27.无论表中的结点是否按关键字进行有序排列,在进行查找操作时都可以使用折半查找。
28.递推算法是一种用若干步可重复的简单运算(规律)来描述复杂问题的方法。
29.有一组数据{6,202,100,301,38,8,1},使用简单选择排序需要进行6趟比较。
30.快速排序的速度在所有排序方法中为最快,而且所需附加空间也最少。
31.线性表可以方便地随机读取、插入、删除表中的任一结点。
32.若一棵二叉树的叶子数为n,则该二叉树中,左、右子树皆非空的结点个数为n-1。
33.影响外排序的时间因素主要是内存与外设交换信息的总次数。
34.递归是计算机中的一种常用算法。它是按照一定的规律来计算序列中的每个项,通常是通过计算前面的一些项来得出序列中指定项的值。
35.一个算法的评价只要考虑时间复杂度。
36.编辑与编译是一回事。
37.简单选择排序是一种稳定排序方法。
38.任意一棵具有n个结点的二叉树,若它有m个叶子,则该二叉树上度数为1的结点为n-2m+1个。
39.一个算法有零个或多个输入。
40.已知有序表(13,21,24,35,47,50,62,83,90,115,134),当折半查找值为90的元素时,查找成功的比较次数为4次
41.一个队列的初始状态为空。现将元素A,B,C,D,E,F,5,4,3,2,1 依次入队,然后再依次退队,则元素退队的顺序为54321ABCDEF。
正确答案:A
42.已知一棵度为3的树有2个度为1的结点,3个度过为2的结点,4个度为3的结点,则该树中有12个叶子结点。
43.插入排序是一种稳定排序方法。
44.字符串的函数都在string.h头文件中。
45.深度为k(k>=1)的二叉树至多有2^k-1个结点。
46.一棵二叉树有10个度为1的结点,7个度为2的结点,则该二叉树共有25个结点。
东师《算法分析与设计》2023年春学期在线作业1[答案]历年参考题目如下:
算法分析与设计17秋在线作业1
试卷总分:100 得分:0
一、 单选题 (共 20 道试题,共 40 分)
1. 下列算法描述所用的方法是() Begin(算法开始)输入 A,B,C IF A>B 则 A→Max 否则 B→Max IF C>Max 则 C→Max Print Max End (算法结束)
A. 流程图
B. N-S流程图
C. 伪代码表示
D. 程序设计语言
满分:2 分
2. 字符数组在进行指定初值时,若未指定数组长度,则长度()初值个数。
A. 小于
B. 等于
C. 大于
D. 不等于
满分:2 分
3. 已知某二叉树的后序遍历序列是dabec,中序遍历序列是deabc,它的前序遍历序列是( )
A. acbed
B. deabc
C. decab
D. cedba
满分:2 分
4. 下列叙述中正确的是 ( )
A. 循环队列有队头和队尾两个指针,因此,循环队列是非线性结构
B. 在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况
C. 在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况
D. 循环队列中元素的个数是由队头指针和队尾指针共同决定
满分:2 分
5. 有以下程序,其运行后的结果是()。 #include <stdio.h> void fun(int n, int *p) { int f1, f2; if( n==1||n==2 ) *p=1; else { fun( n-1, &f1 ); fun( n-2, &f2 ); *p=f1+f2; } } main() { int s; fun(3, &s ); printf("%d ",s); }
A. 2
B. 3
C. 4
D. 5
满分:2 分
6. 以下选项中合法的字符常量是()。
A. "B"
B. 68
C. D
D. '\010'
满分:2 分
7. 十六进制的基数是()。
A. 2
B. 8
C. 10
D. 16
满分:2 分
8. strchr()函数用来()。
A. 字符串连接
B. 比较字符
C. 求字符位置
D. 求子串位置
满分:2 分
9. char szValue[20]; 函数itoa(32, szValue, 16)使得szValue的内容变为()
A. 32
B. 20
C. 16
D. 40
满分:2 分
10. ()是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境等等。
A. VS
B. VM
C. Dev-C++
D. IDE
满分:2 分
11. 字符串”China Beijing”的长度是()
A. 12
B. 13
C. 14
D. 15
满分:2 分
12. 使用简单选择排序法对n个数进行排序要进行()趟比较。
A. n
B. n-1
C. n+1
D. 不一定
满分:2 分
13. 用计算机解决问题的过程可以分成哪三个阶段()。
A. 输入、算法设计和输出
B. 输入、测试和输出
C. 分析问题、设计算法和实现算法
D. 分析问题、测试和实现
满分:2 分
14. 十进制中最小的数码是()。
A. 10
B. 9
C. 1
D. 0
满分:2 分
15. 能正确进行字符串赋值、赋初值的语句组是()。
A. char s[5]={'a','e','i','o','u'};
B. char *s; s="good!";
C. char s[5]="good!";
D. char s[5]="good!";
满分:2 分
16. 将递归算法转换成对应的非递归算法时,通常需要使用()。
A. 栈
B. 队列
C. 链表
D. 树
满分:2 分
17. 下列叙述中正确的是()
A. 线性链表是线性表的链式存储结构
B. 栈与队列是非线性结构
C. 双向链表是非线性结构
D. 只有根结点的二叉树是线性结构
满分:2 分
18. 计算机能直接执行的语言是()。
A. 机器语言
B. 汇编语言
C. 高级语言
D. 目标语言
满分:2 分
19. 数制也称计数制,是用一组固定的符号和统一的规则来表示()的方法。
A. 数值
B. 字母
C. 文字
D. 信息
满分:2 分
20. 执行memset(s,'a',4)后,s的值为()。
A. "aaaa"
B. "a4"
C. "4a"
D. "eeee"
满分:2 分
二、 多选题 (共 5 道试题,共 20 分)
1. 顺序结构、选择结构、循环结构三种结构共同特点是()
A. 只有一个入口
B. 只有一个出口
C. 结构内的每一部分都有机会被执行到(不存在死语句)
D. 结构内不存在死循环(永远执行不完的循环)。
满分:4 分
2. 字符串有关的格式字符有( )。
A. "%c"
B. "%d"
C. "%f"
D. "%s"
满分:4 分
3. 设计递归算法有两点最为关键()和()。
A. 确定递推公式
B. 确定边界(终了)条件(递归出口)
C. 每次递归调用,都必须向基本条件前进
D. 如果结果已知,那么,不用再重复调用递归
满分:4 分
4. 递归算法的执行过程分()和()两个阶段。
A. 递归
B. 递推
C. 回归
D. 回溯
满分:4 分
5. 高精度运算主要解决()。
A.
B. 加数
C. 减数
D. 运算结果的输入
E. 运算结果的存储
满分:4 分
三、 判断题 (共 20 道试题,共 40 分)
1. 排序的稳定性是指排序算法中的比较次数保持不变,且算法能够终止。
A. 错误
B. 正确
满分:2 分
2. puts()函数一次可以输出多个字符串。
A. 错误
B. 正确
满分:2 分
3. 二分法插入排序所需比较次数与待排序记录的初始排列状态相关。
A. 错误
B. 正确
满分:2 分
4. 插入排序是一种稳定排序方法。
A. 错误
B. 正确
满分:2 分
5. 一棵二叉树第6层(根结点为第一层)的结点数最多为32个。
A. 错误
B. 正确
满分:2 分
6. 递归算法是一种用若干步可重复的简单运算(规律)来描述复杂问题的方法。
A. 错误
B. 正确
满分:2 分
7. 在执行某个排序算法过程中,出现了排序码朝着最终排序序列位置相反方向移动,则该算法是不稳定的。
A. 错误
B. 正确
满分:2 分
8. 在C语言中字符串的头文件是string.h。
A. 错误
B. 正确
满分:2 分