详情请咨询QQ:3494317897 微信:aopy98
试卷总分:100 得分:100 一、单选题 (共 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.某二叉树中有n个度为2的结点,则该二叉树中的叶子结点数为()。 A.n+1 B.n-1 C.2n D.n/2
3.下列叙述中正确的是() A.线性链表是线性表的链式存储结构 B.栈与队列是非线性结构 C.双向链表是非线性结构 D.只有根结点的二叉树是线性结构
4.设有如下函数定义 int fun(int k) { if (k<1) return 0; else if(k==1) return 1; else return fun(k-1)+1; } 若执行调用语句:n=fun(3);,则函数fun 总共被调用的次数是()。 A.2 B.3 C.4 D.5
5.strchr()函数用来()。 A.字符串连接 B.比较字符 C.求字符位置 D.求子串位置
6.下面4句话中,最准确的表述是()。 A.程序=算法+数据结构 B.程序是使用编程语言实现算法 C.程序的开发方法决定算法设计 D.算法是程序设计中最关键的因素
7.一个递归算法必须包括()。 A.递归部分 B.终止条件和递归部分 C.循环部分 D.终止条件和循环部分
8.插入排序在最好情况下的时间复杂度为() A.O(logn) B.O(n) C.O(n*logn) D.O(n2)
9.已知一棵完全二叉树的第6层(设根为第1层)有8个叶结点,则该完全二叉树的结点个数最多是(C)。 A.39 B.52 C.111 D.119
10.strstr()函数用来()。 A.字符串连接 B.比较字符 C.求字符位置 D.求子串位置
11.在程序代码编辑框外(一般都是程序代码的最左侧)双击,就成功设置了一个断点,设置成功后会在该行的最前面显示一个圆点,这样的过程称作()。 A.设置断点 B.单步调试 C.程序编译 D.程序调试
12.有以下程序 #include <stdio.h> int f(int t[ ], int n ); main() { int a[4]={1, 2, 3, 4}, s; s=f(a, 4); printf("%d\n", s); } int f(int t[ ], int n ) { if(n>0) return t[n-1]+f(t, n-1); else return 0; } 程序运行后的输出结果是()。 A.4 B.10 C.14 D.6
13.八进制中最大的数码是()。 A.6 B.7 C.8 D.9
14.将f=1+1/2+1/3+…+1/n转化成递归函数,其递归体是()。 A.f(1)=0 B.f(1)=1 C.f(0)=1 D.f(n)=f(n-1)+1/n
15.分治法是把一个复杂的问题分成相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题解的() A.合并 B.最大值 C.最小值 D.平均值
16.自动化的工具同样也能够帮助你跟踪程序,尤其当程序很复杂时效果更加明显,这种工具叫做()。 A.调试器 B.编辑器 C.编译器 D.调解器
17.strcpy()函数用来()。 A.求字符串长度 B.比较字符 C.求子串 D.字符串拷贝
18.cd 目录名的功能是()。 A.退回到根目录 B.退回到上一级目录 C.进入特定的目录 D.显示出文本文件的内容
19.对于长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为()。 A.log2n B.n/2 C.n D.n+1
20.()嵌在源程序体中,用于描述其后的语句或程序段做什么工作,也就是解释下面要做什么,或是执行了下面的语句会怎么样。而不要解释下面怎么做,因为程序本身就是怎么做。 A.文件注释 B.函数注释 C.功能注释 D.程序注释
二、多选题 (共 4 道试题,共 16 分) 21.顺序结构、选择结构、循环结构三种结构共同特点是() A.只有一个入口 B.只有一个出口 C.结构内的每一部分都有机会被执行到(不存在死语句) D.结构内不存在死循环(永远执行不完的循环)。
22.字符串有关的格式字符有( )。 A."%c" B."%d" C."%f" D."%s"
23.递归算法的执行过程分()和()两个阶段。 A.递归 B.递推 C.回归 D.回溯
24.设计递归算法有两点最为关键()和()。 A.确定递推公式 B.确定边界(终了)条件(递归出口) C.每次递归调用,都必须向基本条件前进 D.如果结果已知,那么,不用再重复调用递归
三、判断题 (共 22 道试题,共 44 分) 25.简单选择排序算法在最好情况下的时间复杂度为O(N)。
26.顺序查找是从线性表的一端开始,依次将每个元素的关键字同给定值K进行比较,若某元素关键字与K相等,则查找成功;若所有元素都比较完毕,仍找不到关键字为K的元素,则查找失败。
27.冒泡排序的时间复杂度为O(n*n)。
28.内排序要求数据一定要以顺序方式存储。
29.排序速度,进行外排序时,必须选用最快的内排序算法。
30.gets()函数一次可以输入多个字符串。
31.采用顺序查找方式查找长度为n的线性表时,平均查找长度为(n-1)/2。
32.穷举法,也称辗转法,是一种针对于密码的破译方法,即将密码进行逐个推算直到找出真正的密码为止。
33.程序调试的作用是将程序测试过程中发现的错误改正过来,程序调试后需要再次进行测试。
34.具有10个顶点的无向图,边的总数最多为44。
35.递推实现的关键是找出递推公式。
36.冒泡排序法每次比较的是相邻的两个数:a[i]和a[i+1],如果前一个数比后一个数大,则马上交换。
37.字符型和整型一般情况下可以通用。
38.在深度为7的满二叉树中,度为2的结点个数为64。
39.用二分(对半)查找表的元素的速度比用顺序法快。
40.某二叉树中度为2的结点有18个,则该二叉树中有20个叶子结点。
41.线性表的存储结构主要分为顺序存储结构和链式存储结构。队列是一种特殊的线性表,循环队列是队列的顺序存储结构。
42.C语言中,数组名代表该数组的起始地址。
43.线性表需要为表示结点间的逻辑关系而增加额外的存储空间。
44.在待排数据基本有序的情况下,快速排序效果最好。
45.在后序遍历二叉树的序列中,任何结点的子树上的所有结点,都是直接跟在该结点之后。
46.scanf()、printf()可以输入输出几个字符串。 奥鹏,国开,广开,电大在线,各省平台,新疆一体化等平台学习
详情请咨询QQ:3494317897 微信:aopy98 |