急求!数据结构C语言的几道习题,请高手帮忙!谢谢!

1.已知二维数组A[10][20],该数组每个元素占2个存储单元,并且A[0][0]的存储地址为1024, 则A[6][16]的存储地址是:

A. A. 1256
B. B. 1296
C. C. 1238
D. D. 1314
2.在一个带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行:
A. A. p->next = HL->next ; HL->next = p;
B. B. p->next =HL; HL = p;
C. C. p->next =HL; p = HL;
D. D. HL=p; p->next=HL;
3.在一个具有n个结点的线性链表中查找某一个结点,若查找成功,需要平均比较______个结点
A. A. (1+n)/2
B. B. n
C. C. n-1
D. D. n/2
4.设顺序线性表中有n个数据元素,则删除表中第i个元素需要移动( )个元素
A. A. n-i
B. B. n+1-i
C. C. n-1-i
D. D. i
5.若某线性表最常用的操作是取第i个元素及其前趋元素,则利用____存储方式最节省时间。(教材第二章)
A. A. 顺序表
B. B. 双链表
C. C. 带头结点的双循环链表
D. D. 单循环链表
6.若已知一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是:
A. A. 2 3 1
B. B. 3 2 1
C. C. 3 1 2
D. D. 1 2 3
7.在一个具有n个单元的顺序表中,假定以地址低端(即下标为1的单元)作为底,以top作为顶指针,则当做进站处理时top变化为:
A. A. top不变
B. B. top=0
C. C. top=top-1
D. D. top=top+1
8.在一个以链表储存的队列中,假定front和rear分别为队首和队尾指针,则进行插入S结点的操作时应执行:
A. A. front->next=s; front=s;
B. B. s->next=rear; rear=s;
C. C. rear->next=s; rear=s;
D. D. s->next=front; front=s;
9.一颗含18个节点的二叉树的高度至少为:
A. A. 3
B. B. 4
C. C. 5
D. D. 6
10.将含100个结点的完全二叉树从根这一层开始,每层从左至右依次对结点编号,根结点的编号为1,编号为47的结点X的双亲结点编号为:
A. A. 24
B. B. 25
C. C. 23
D. D. 无法确定

第1个回答  2012-05-14
1)B
2)A
3)B
4)只要移动一个元素(不明白题目意思)
5)B
6)B
7)B
8)C
9)C
10)C
不保证全对哦
第2个回答  2012-05-14
1.B 2.b 3.a 4.a 5.a 6.c 7.d 8.c 9.b本回答被提问者采纳
第3个回答  2012-05-14
看不懂。。。。
第4个回答  2012-05-14
好复杂啊 看不懂哦

几道c语言题目 菜鸟望高手解答
第一道题:输出的是:0 1 3 4 \/\/因为for循环 i从0到4 但是当i等于2的时候执行了continue,也就是直接跳转到下一次循环,所以2没有输出 第二题:t为2 因为 if-else 结构中的else是和最近一个if相匹配的,又因为if(x<y)不成立,所以直接执行输出语句,即输出2 第三题:3 6 9 因为x被...

C语言的几道考题,请各位高手帮忙,急!!!(追加50分)
include<stdio.h> int stu(int a,int b,int c);int stu(int a,int b,int c){ int s;s=a*a+b*b+c*c;return s;} void main(){ int a,b,c;printf("请输入3个数;")scanf(“%d %d %d”,&a,&b,&c);s=stu(a,b,c);printf("%d",s);} 实在是懒的写了,都快1点了。

一个有关C语言(数据结构)程序设计题 高手请帮忙,高分!
include <stdio.h> include <malloc.h> define INFINITY 32767 define MAX_VEX 20 \/\/最大顶点个数 define QUEUE_SIZE (MAX_VEX+1) \/\/队列长度 bool *visited; \/\/访问标志数组 \/\/图的邻接矩阵存储结构 typedef struct{ char *vexs; \/\/顶点向量 int arcs[MAX_VEX][MAX_VEX]; \/\/邻接矩阵 ...

几道简单的C语言编程题,请高手帮忙
printf("最大值为:%d",c);}

C语言高手帮忙做这三道题,要详解 谢谢拉!!
x"的值为0时。所以就是x==0.2、C 这题和上题一样,就是(m)表达式为真时,执行a++;为假时,执行a-。表达式m的真假与表达式m!=0一样,所以选C。3、C define是宏定义,这里的效果就是把s(m,n)替换成m\/n,所以s(4+2,2+1)进行替换后就成了4+2\/2+1=4+1+1=6。所以选C ...

求高手帮忙做一些C语言试题
C、log10()E、pow()F、isalpha()第三题、判断题(每题1分,5道题共5分)1、表达式18\/4*sqrt(4.0)\/8值的数据类型为double。正确 2、逻辑关系“a≥10或a≤0”正确表示的C语言表达式是:a>=10 or a<=0 。错误 3、a=b=58是合法的C语言赋值表达式。正确 4、C语言表达式值的类型...

请高手做下这两道C语言题目,答案好追加100分!
第一题 int sumx( int a0, int d,int n ) {\/*参数要指明类型*\/ int i, k, s=0;k = a0;for ( i=0; i<n; i++ ){s += k; \/*加上左大括号*\/ s += i*d;}\/*改正算术错误,并加上右大括号*\/ return s;} main() { int a0, d, n;scanf( "%d %d %d", ...

请各位高手帮忙做几道c语言的编程题
c = i%100\/10;d = i%10;m = a*10+b;n = c*10+d;if((m+n)*(m+n) == i)printf("%d ",i);} } (4)include <stdio.h> void main(){ int a[10]={0,1,2,3,4,5,6,7,8,9,};int i,j;int t;for (i=0; i<10; i++){ printf("%d ",a[i]);} cout<<...

c语言编程题,请高手帮忙做一下,拜谢,急急急急……
Stu table[LEN]; \/\/ 申请一个长度为3的结构数组来存放数据 int count = 0;char *p[5] = {"姓名","数学成绩","语文成绩","英语成绩","总分"};\/\/ \/\/ 输入数据并计算总分,基本可以实现无异常输入,名字数组长度30,有越界可能 \/\/ for(count = 0; count < LEN; count++){ printf("...

C语言的题目高手帮忙解释下 printf ("%d\\n",p);printf ("%d\\n",p+...
输出的都是指针的值。p+9,由于p是int型指针,int占两个字节,p+9的值比p的值多2*9=18 正解应是 A 212 由于题目已经说了int为2字节,你调试的机器上int是4字节,所以会差36

相似回答