【单选题】
在一个长度为n 的顺序表中,向第i个元素(1≤i≤n+1)之前插入一个新元素时,需要向后移动________个元素。___
A. n-i
B. n-i+1
C. n-i-1
D. i
查看试卷,进入试卷练习
微信扫一扫,开始刷题
答案
B
解析
暂无解析
相关试题
【单选题】
设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用___最节省时间。
A. 单链表
B. 单循环链表
C. 带尾指针的单循环链表
D. 带头结点的双循环链表
【单选题】
静态链表中指针表示的是___。
A. 内存地址
B. 数组下标
C. 下一元素地址
D. 左、右孩子地址
【单选题】
链表不具有的特点是___。
A. 插入、删除不需要移动元素
B. 可随机访问任一元素
【单选题】
用带头结点的单链表表示的链式队列的队头在链表的___位置。
A. 链头
B. 链尾
C. 链中
D. 第2个结点
【单选题】
顺序表和链表相比存储密度较大,这是因为 ___。
A. 顺序表的存储空间是预先分配的
B. 顺序表不需要增加指针来表示元素之间的逻辑关系
C. 链表中所有节点的地址是不连续的
D. 顺序表中所有元素的存储地址是连续的
【单选题】
在一个单链表中,若删除p所指结点的后续结点,则执行___。
A. p—>next= p—>next—>next;
B. p= p—>next; p—>next= p—>next—>next;
C. p—>next= p—>next
D. p= p—>next—>next;
【单选题】
在一个单链表中,若p所指结点不是最后结点,在p之后插入s所指结点,则执行___。
A. s—>next=p; p—>next=s
B. s—>next=p—>next; p—>next=s
C. s—>next=p—>next; p=s
D. p—>next=s; s—>next=p
【单选题】
判定一个循环队列Q(最多有MAXQSIZE个元素空间)为空的条件为___ 。
A. Q.front==Q.rear
B. Q.front!=Q.rear
C. Q.front==(Q.rear+1)%MAXQSIZE
D. Q.front!=(Q.rear+1)%MAXQSIZE
【单选题】
判定一个循环队列Q(最多有MAXQSIZE个元素空间)为满的条件为___。
A. Q->front==Q->rear
B. Q->front!=Q->rear
C. Q->front==(Q->rear+1)%MAXQSIZE
D. Q->front!=(Q->rear+1)%MAXQSIZE
【单选题】
在循环队列中用数组A[0..m-1] 存放队列元素,其队头和队尾指针分别为front和rear,则当前队列中的元素个数是___。
A. ( front - rear + 1) % m
B. ( rear - front + 1) % m
C. ( front - rear + m) % m
D. ( rear - front + m) % m
【单选题】
栈和队列的共同点是___
A. 都是先进后出
B. 都是先进先出
C. 只允许在端点处插入和删除元素
D. 没有共同点
【单选题】
栈操作的特点是___ 。
A. 只能进行插入
B. 只能进行删除
C. 先进先出
D. 先进后出
【单选题】
4个元素进S栈的顺序是A,B,C,D,经操作POP(S)后栈顶元素是___
A. A
B. B
C. C
D. D
【单选题】
一个栈的输入序列为 a b c d e,则不能是出栈序列的为___。
A. b c d a e
B. b c a d e
C. e d a c b
D. a e d c b
【单选题】
一个栈的输入序列为 1 2 3 4 ,则不能是出栈序列的为___。
A. 2 3 4 1
B. 2 3 1 4
C. 4 1 3 2
D. 1 4 3 2
【单选题】
若用一个大小为6的数组来实现循环队列,且当前rear和front的值分别为0和3。当从队列中删除一个元素,再加入两个元素后,rear和front的值分别为___?
A. 1和5
B. 2和4
C. 4和2
D. 5和1
【单选题】
引起队尾指针改变的操作是___。
A. 出队和入队
B. 入队
C. 出队
D. 取队头元素
【单选题】
对于栈操作数据的原则是___。
A. 先进先出
B. 后进先出
C. 后进后出
D. 不分顺序
【单选题】
设有两个串p和q,求q在p中首次出现的位置的运算称作___
A. 连接
B. 模式匹配
C. 求子串
D. 求串长
【单选题】
串是一种特殊的线性表,其特殊性体现在___
A. 可以顺序存储
B. 数据元素是一个字符
C. 可以链接存储
D. 数据元素可以是多个字符
【单选题】
串的长度是___
A. 串中不同字母的个数
B. 串中不同字符的个数
C. 串中所含字符的个数,且大于0
D. 串中所含字符的个数
【单选题】
数组M[1..4,1..5]的每个元素占5个单元,按行优先次序存储在起始地址为1000的连续的内存单元中,则最后一个元素M[4,5] 的地址为 _________
A. 1005
B. 1015
C. 1100
D. 1095
【单选题】
三维数组A[4][5][6]按行优先存储方法存储在内存中,若每个元素占2个存储单元,且数组中第一个元素的存储地址为120,则元素A[3][4][5]的存储地址为___
A. 356
B. 358
C. 360
D. 362
【单选题】
稀疏矩阵可以用三元组顺序表来表示,其中一个三元组数据中不包括非零元的___.
A. 行号
B. 列号
C. 元素值
D. 元素总数
【单选题】
一般数组常采用的存储顺序为___。
A. 先存上三角,再存下三角
B. 以行序为主序或以列序为主序
C. 只能以行序为主序
D. 只能以列序为主序
【单选题】
深度为5的二叉树至多有__________个结点。___
A. 16
B. 31
C. 32
D. 10
【单选题】
设a,b为一棵二叉树上的两个结点,在中序遍历时,a在b前的条件是___
A. a在b的右方
B. a在b的左方
C. a是b的祖先
D. a是b的子孙
【单选题】
对某二叉树进行前序遍历的结果为ABDEFC,中序遍历的结果为DBFEAC,则后序周游的结果为___
A. DBFEAC
B. DFEBCA
C. BDFECA
D. BDEFAC
【单选题】
某二叉树的中序序列和后序序列正好相反,则该二叉树一定是 的二叉树。___
A. 只有一个结点
B. 高度等于其结点数
C. 任一结点无左孩子
D. 任一结点无右孩子
【单选题】
一颗完全二叉树中根结点的编号为1,而且23号结点有左孩子但没有右孩子,则完全二叉树总共有_______个结点。___
A. 24
B. 45
C. 46
D. 47
【单选题】
一个有n个叶结点的哈夫曼树具有的结点数为___________。___
A. 2n
B. 2n-1
C. 2n+1
D. 2(n-1)
【单选题】
由权值分别为3,6,7,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为 。___
A. 51
B. 23
C. 53
D. 74
【单选题】
在有n个结点的二叉树中,分支个数共有 。___
A. n-1
B. n+1
C. 2n-1
D. 2n+l
【单选题】
设树T的度为4,其中度为1,2,3和4的结点个数分别为4,2,1,1,则T中的叶子数为( )。___
A. 5
B. 6
C. 7
D. 8
【单选题】
设一个二叉树共13个结点,那么它最大高度是 。___
A. 13/2
B. log213
C. ln 13
D. 13
【单选题】
一个有n个顶点的连通无向图至少有___________条边。___
A. n-1
B. n
C. n+1
D. n+2
【单选题】
设无向图G中有n个顶点m条边,则其对应的邻接表中的表头结点和边结点的个数分别为___________。___
A. n,m
B. m,n
C. 2n,m
D. n,2m
【单选题】
任何一个无向连通带权图的最小生成树____________。___
A. 只有一棵
B. 有一棵或多棵
C. 一定有多棵
D. 可能不存在
【单选题】
可以判断一个有向图中是否含有回路的方法为___________。___
A. 广度优先遍历
B. 深度优先遍历
C. 拓扑排序
D. 求最短路径
【单选题】
设无向图用邻接矩阵存储,则顶点i的度等于矩阵中 。___
A. 第i行0元素个数之和
B. 第i行1元素个数之和
C. 第i行和第i列1元素个数之和
D. 第i行和第i列0元素个数之和
推荐试题
【单选题】
若有定义:int a=7; float x=2.5,y=4.7; 则表达式x+a%3*(int)(x+y)%2/4的值是___
A. 2.500000
B. 2.750000
C. 3.500000
D. 0.00000
【单选题】
已知大写字母A的ASCII码值是65,小写字母a的ASCII码值是97,则用八进制表示的字符常量’\101’是___
A. 字符A
B. 字符a
C. 字符e
D. 非法的常量
【单选题】
以下选项中合法的用户标识符是___
A. long
B. _2Test
C. 3Dmax
D. A.dat
【单选题】
语句printf(“a\bre\’hi\’y\\\bou\n”);的输出结果是(说明:’\b’是退格符)___
A. a\ber\’hi\’y\\\bou
B. a\ber\’hi\’y\bou
C. re’hi’you
D. abre’hi’y\bou
【单选题】
若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是___
A. 1
B. 2
C. 2.0
D. 2.5
【单选题】
设有 int x=11;则表达式(x++ * 1/3)的值是___
A. 3
B. 4
C. 11
D. 12
【单选题】
若以下变量均为整型,且num=sum=7;则计算表达式sum=num++,sum++,++num后sum的值为___
A. 7
B. 8
C. 9
D. 10
【单选题】
C语言中的标识符只能由字母,数字和下划符组成,且第一个字符___
A. 必须为字母
B. 必须为下划线
C. 必须为字母或下划线
D. 可以是字母,数字和下划线中任一字符
【单选题】
假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是___
A. 7
B. 8
C. 6
D. 2
【单选题】
若有说明语句;char c=’\72’;则变量c___
A. 包含1个字符
B. 包含2个字符
C. 包含3个字符
D. 说明不合法,c的值不确定
【单选题】
下面不正确的字符串常量是___
A. ‘abc’
B. “12’12”
C. “0”
D. “ ”
【单选题】
若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是___
A. -3
B. 9
C. -12
D. 6
【单选题】
下列选项中,合法的C语言关键词是___
A. VAR
B. cher
C. integer
D. default
【单选题】
以下选项中,与k=n++完全等价的表达式是___
A. k=n,n=n+1
B. n=n+1,k=n
C. k=++n
D. k+=n+1
【单选题】
以下for循环的执行次数是 for(x=0,y=0;(y=123)&&(x<4);x++);___
A. 是无限循环
B. 循环次数不定
C. 4次
D. 3次
【单选题】
语句while(!E);中的表达式!E等价于___
A. E==0
B. E!=1
C. E!=0
D. E==1
【单选题】
下面有关for循环的正确描述是___
A. for循环只能用于循环次数已经确定的情况
B. for循环是先执行循环循环体语句,后判断表达式
C. 在for循环中,不能用break语句跳出循环体
D. for循环的循环语句中,可以包含多条语句,但必须用括号括起来
【单选题】
C语言中while和do-while循环的主要区别是___
A. do-while的循环体至少无条件执行一次
B. while的循环控制条件比do-while的循环控制条件更严格
C. do-while允许从外部转到循环体内
D. do-while的循环体不能是复合语句
【单选题】
以下不是无限循环的语句为___
A. for(y=0,x=1;x>++y;x=i++) i=x
B. for(;;x++=i)
C. while(1){x++;}
D. for(i=10;;i--) sum+=i
【单选题】
C语言用于结构化程序设计的三种基本结构是___
A. 顺序结构、选择结构、循环结构
B. if、switch、break
C. for、while、do-while
D. if、for、continue
【单选题】
对for(表达式1;;表达式3)可理解为___
A. for(表达式1;0;表达式3)
B. for(表达式1;1;表达式3)
C. for(表达式1;表达式1;表达式3)
D. for(表达式1;表达式3;表达式3)
【单选题】
下列运算符中优先级最高的是___
A. <
B. +
C. &&
D. !=
【单选题】
printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列,如果字符串长度大于5,则输出按方式___
A. 从左起输出该字符串,右补空格
B. 按原字符从左向右全部输出
C. 右对齐输出该字串,左补空
D. 输出错误信息
【单选题】
putchar函数可以向终端输出一个___
A. 整型变量表达式值
B. 实型变量值
C. 字符串
D. 字符或字符型变量值
【单选题】
以下描述中正确的是___
A. 由于do-while循环中循环体语句只能是一条可执行语,所以循环体内不能使用复合句语
B. do-while循环由do开始,用while(表达式)后面不能写分句
C. 在do-while循环体中,一定要有能使while后面表达式的值变为零(“假”)操作
D. do-while循环中,根据情况可以省略while
【单选题】
以下关于运算符优先顺序的描述中正确的是___
A. 关系运算符<算术运算符<赋值运算符<逻辑运算符
B. 逻辑运算符<关系运算符<算术运算符<赋值运算符
C. 赋值运算符<逻辑运算符<关系运算符<算术运算符
D. 算术运算符<关系运算符<赋值运算符<逻辑运算符
【单选题】
已知x=43,ch=’A’,y=0;则表达式(x>=y&&ch<’B’&&!y)的值是___
A. 0
B. 语法错
C. 1
D. “假”
【单选题】
若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”,则以下不能满足要求的表达式是___
A. A%2==1
B. !(A%2==0)
C. !(A%2)
D. A%2
【单选题】
判断char型变量c1是否为小写字母的正确表达式是___
A. ‘a’<=c1<=’z’
B. (c1>=a)&&(c1<=z)
C. (‘a’>=c1)||(’z’<=c1)
D. (c1>=’a’)&&(c1<=’z’)
【单选题】
为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else子句总是与什么配对___
A. 缩排位置相同的if
B. 其之前最近的if
C. 其之后最近的if
D. 同一行上的if
【单选题】
若有说明:int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是___
A. 2
B. 3
C. 4
D. 无确定值
【单选题】
若二维数组a有m列,则在a[i][j]前的元素个数为___
A. j*m+i
B. i*m+j
C. i*m+j-1
D. i*m+j+1
【单选题】
设有数组定义,char array[ ]=”China”;则数组array所占的___
A. 4个字节
B. 5个字节
C. 6个字节
D. 7个字节
【单选题】
以下能正确定义数组并正确赋初值的语句是___
A. int N=5,b[N][N];
B. int a[1][2]={{1},{3}};
C. int c[2][]={{1,2},{3,4}};
D. int d[3][2]={{1,2},{24}};
【单选题】
若有说明:int a[10];则对a数组元素的正确引用是___
A. a[10]
B. a[3,5]
C. a(5)
D. a[10-10]
【单选题】
以下能对一维数组a进行正确初始化的语句是___
A. int a[10]=(0,0,0,0,0)
B. int a[10]={};
C. int a[]={0};
D. int a[10]={10*1};
【单选题】
若有说明int a[3][4];则对a数组元素的正确引用是___
A. a[2][4]
B. a[1,3]
C. a[1+1][0]
D. a(2)(1)
【单选题】
若有说明int a[3][4];则a数组元素的非法引用是___
A. a[0][2*1]
B. a[1][3]
C. a[4-2][0]
D. a[0][4]
【单选题】
以下能对二维数组a进行正确初始化的语句是___
A. int a[2][]={{1,0,1},{5,2,3}};
B. int a[][3]={{1,2,3},{4,5,6}};
C. int a[2][4]={{1,2,3},{4,5},{6}};
D. int a[][3]={{1,0,1}{},{1,1}};
【单选题】
以下不能对二维数组a进行正确初始化的语句是___
A. int a[2][3]={0};
B. int a[][3]={{1,2},{0}};
C. int a[2][3]={{1,2},{3,4},{5,6}};
D. int a[][3]={1,2,3,4,5,6};