欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载  

    《C语言数据结构》第1至9章自测题答案大全.doc

    • 资源ID:5120703       资源大小:3.11MB        全文页数:61页
    • 资源格式: DOC        下载积分:8
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要8
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《C语言数据结构》第1至9章自测题答案大全.doc

    第一章概论 自测题答案 姓名 班级 题号一二三四五六总分题分3315982015100得分一、填空题(每空1分,共33分)1. 一个计算机系统包括 硬件系统 和 软件系统 两大部分。2. 一台计算机中全部程序的集合,称为这台计算机的 软件资源 /(系统) 。3. 计算机软件可以分为 系统 软件和 应用 软件两大类。科学计算程序包属于 应用软件 ,诊断程序属于 系统软件(工具) 。4. 一种用助忆符号来表示机器指令的操作符和操作数的语言是 汇编语言 。5. 数据结构是一门研究非数值计算的程序设计问题中计算机的 操作对象 以及它们之间的 关系 和运算等的学科。6. 数据结构被形式地定义为(D, R),其中D是 数据元素 的有限集合,R是D上的 关系 有限集合。7. 数据结构包括数据的 逻辑结构 、数据的 存储结构 和数据的 运算 这三个方面的内容。8. 数据结构按逻辑结构可分为两大类,它们分别是 线性结构 和 非线性结构 。9. 线性结构中元素之间存在一对一关系,树形结构中元素之间存在一对多关系,图形结构中元素之间存在多对多关系。10 在线性结构中,第一个结点 没有 前驱结点,其余每个结点有且只有 1个前驱结点;最后一个结点 没有 后续结点,其余每个结点有且只有1个后续结点。11. 在树形结构中,树根结点没有 前驱 结点,其余每个结点有且只有 1 个前驱结点;叶子结点没有 后续 结点,其余每个结点的后续结点数可以任意多个 。12. 在图形结构中,每个结点的前驱结点数和后续结点数可以 任意多个 。13数据的存储结构可用四种基本的存储方法表示,它们分别是顺序 、 链式 、 索引 和 散列 。14. 数据的运算最常用的有5种,它们分别是插入 、 删除、修改、 查找 、排序。15. 一个算法的效率可分为 时间 效率和 空间 效率。16. 00年省统考任何一个C程序都由 一个主函数 和若干个被调用的其它函数组成。17. 【00年省统考题】变量一经说明,就确定该变量的取值范围(即存储单元)及 确定变量所允许的运算 。二、单项选择题(每小题1分,共15分)( B ) 1. 通常所说的主机是指A) CPUB) CPU和内存C) CPU、内存与外存D) CPU、内存与硬盘( C )2. 在计算机内部,一切信息的存取、处理和传送的形式是A) ACSII码 B) BCD码 C)二进制 D)十六进制 ( D )3. 软件与程序的区别是A) 程序价格便宜、软件价格昂贵;B) 程序是用户自己编写的,而软件是由厂家提供的;C) 程序是用高级语言编写的,而软件是由机器语言编写的;D) 软件是程序以及开发、使用和维护所需要的所有文档的总称,而程序只是软件的一部分。( C )4. 所谓“裸机”是指A) 单片机B)单板机C) 不装备任何软件的计算机D) 只装备操作系统的计算机( D )5. 应用软件是指A)所有能够使用的软件 B) 能被各应用单位共同使用的某种软件C)所有微机上都应使用的基本软件 D) 专门为某一应用目的而编制的软件( A )6. 00年省统考C语言中的常量可分为整型常量、实型常量、字符型常量及 (枚举) 四种。(A) 符号常量 (B)长整型常量 (C) 逻辑常量 (D)二进制整数( C )7. 编译程序的功能是A)发现源程序中的语法错误 B)改正源程序中的语法错误C)将源程序编译成目标程序 D)将某一高级语言程序翻译成另一种高级语言程序( A )8. 系统软件中最重要的是A) 操作系统 B) 语言处理系统 C) 工具软件 D) 数据库管理系统( C )9. 可移植性最好的计算机语言是A) 机器语言B)汇编语言C) 高级语言D) 自然语言( B )10. 非线性结构是数据元素之间存在一种:A)一对多关系 B)多对多关系 C)多对一关系 D)一对一关系( C )11. 数据结构中,与所使用的计算机无关的是数据的 结构;A) 存储 B) 物理 C) 逻辑 D) 物理和存储( C )12. 算法分析的目的是:A) 找出数据结构的合理性 B) 研究算法中的输入和输出的关系C) 分析算法的效率以求改进 D) 分析算法的易懂性和文档性( A )13. 算法分析的两个主要方面是:A) 空间复杂性和时间复杂性 B) 正确性和简明性C) 可读性和文档性 D) 数据复杂性和程序复杂性( C )14. 计算机算法指的是:A) 计算方法 B) 排序方法 C) 解决问题的有限运算序列 D) 调度方法( B )15. 计算机算法必须具备输入、输出和 等5个特性。A) 可行性、可移植性和可扩充性 B) 可行性、确定性和有穷性C) 确定性、有穷性和稳定性 D) 易读性、稳定性和安全性三、简答题(每小题3分,共9分)1我们知道计算机只能执行机器指令,为什么它能运行用汇编语言和高级语言编写的程序?答:靠汇编程序将汇编语言或高级语言翻译转换为目标程序(即机器语言)。2.【严题集1.2】数据结构和数据类型两个概念之间有区别吗?答:简单地说,数据结构定义了一组按某些关系结合在一起的数组元素。数据类型不仅定义了一组带结构的数据元素,而且还在其上定义了一组操作。3. 简述线性结构与非线性结构的不同点。答:线性结构反映结点间的逻辑关系是 一对一的,非线性结构反映结点间的逻辑关系是多对多的。四、00年统考题阅读下列C程序段,写出相应的执行结果(每小题4分,共8分)2. long int fact(n)int n;long f;if(n>1)f=n*fact(n-1); else f=1;return(f);main()int n;long y;n=5;y=fact(n);printf(“%d,%ldn”,n,y);答:运行结果为: 5,120 此题为递归运算1. printf(“Input x”);scanf(“%d”,&x);if (x<=30) if(x>20) y=x;else if (x>10) y=2*x;if (x>0&&x<30)printf(“x=%d,y=%d”,x,y);else printf(“输入数据错!”);试写出当x分别为18,8时的执行结果。答:运行结果为:x=18,y=36 x=8,y=运行前的值, 且从x30开始为数据错五、【严题集1.8】分析下面各程序段的时间复杂度(每小题5分,共20分)2. s=0; for i=0; i<n; i+)for(j=0; j<n; j+) s+=Bij;sum=s;答:O(n2)1. for (i=0; i<n; i+)for (j=0; j<m; j+)Aij=0;答:O(m*n)3. x=0;for(i=1; i<n; i+) for (j=1; j<=n-i; j+)x+;解:因为x+共执行了n-1+n-2+1= n(n-1)/2,所以执行时间为O(n2)4. i=1; while(i<=n) i=i*3;答:O(log3n)六、设有数据逻辑结构S=(D,R),试按各小题所给条件画出这些逻辑结构的图示,并确定相对于关系R,哪些结点是开始结点,哪些结点是终端结点?(每小题5分,共15分)1. 【严蔚敏习题集P7 1.3】D=d1,d2,d3,d4 R=(d1,d2),(d2,d3),(d3,d4) 答: d1d2d3d4 d1无直接前驱,是首结点 d4无直接后继是尾结点2. D=d1,d2,d9 R=(d1,d2),(d1,d3),(d3,d4),(d3,d6),(d6,d8),(d4,d5), (d6,d7),(d8,d9) 答: 此图为树形结构 d1无直接前驱,是根结点 d2,d5,d7,d9无直接后继是叶子结点3. D=d1,d2,d9 R=(d1,d3),(d1,d8),(d2,d3),(d2,d4),(d2,d5),(d3,d9), (d5,d6),(d8,d9),(d9,d7), (d4,d7), (d4,d6)答: 此图为图形结构 d1,d2无直接前驱,是开始结点 d6,d7无直接后继是终端结点 (2) (3)第2章 自测卷答案 姓名 班级 题号一二三四五六七总分题分1310101071040100得分一、填空(每空1分,共13分)1. 【严题集2.2】在顺序表中插入或删除一个元素,需要平均移动 表中一半元素,具体移动的元素个数与 表长和该元素在表中的位置 有关。2. 线性表中结点的集合是 有限 的,结点间的关系是 一对一 的。3. 向一个长度为n的向量的第i个元素(1in+1)之前插入一个元素时,需向后移动 n-i+1 个元素。4. 向一个长度为n的向量中删除第i个元素(1in)时,需向前移动 n-i 个元素。5. 在顺序表中访问任意一结点的时间复杂度均为 O(1) ,因此,顺序表也称为 随机存取 的数据结构。6. 【严题集2.2】顺序表中逻辑上相邻的元素的物理位置 必定相邻。单链表中逻辑上相邻的元素的物理位置 不一定 相邻。7. 【严题集2.2】在单链表中,除了首元结点外,任一结点的存储位置由 其直接前驱结点的链域的值 指示。8 在n个结点的单链表中要删除已知结点*p,需找到它的前驱结点的地址,其时间复杂度为O(n)。二、判断正误(在正确的说法后面打勾,反之打叉)(每小题1分,共10分)( × )1. 链表的每个结点中都恰好包含一个指针。 答:错误。链表中的结点可含多个指针域,分别存放多个指针。例如,双向链表中的结点可以含有两个指针域,分别存放指向其直接前趋和直接后继结点的指针。( × )2. 链表的物理存储结构具有同链表一样的顺序。错,链表的存储结构特点是无序,而链表的示意图有序。( × )3. 链表的删除算法很简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向前移动。错,链表的结点不会移动,只是指针内容改变。( × )4. 线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。错,混淆了逻辑结构与物理结构,链表也是线性表!且即使是顺序表,也能存放记录型数据。( × )5. 顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。 错,正好说反了。顺序表才适合随机存取,链表恰恰适于“顺藤摸瓜”( × )6. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。错,前一半正确,但后一半说法错误,那是链式存储的优点。顺序存储方式插入、删除运算效率较低,在表长为n的顺序表中,插入和删除一个数据元素,平均需移动表长一半个数的数据元素。( × )7. 线性表在物理存储空间中也一定是连续的。错,线性表有两种存储方式,顺序存储和链式存储。后者不要求连续存放。( × )8. 线性表在顺序存储时,逻辑上相邻的元素未必在存储的物理位置次序上相邻。错误。线性表有两种存储方式,在顺序存储时,逻辑上相邻的元素在存储的物理位置次序上也相邻。( × )9. 顺序存储方式只能用于存储线性结构。错误。顺序存储方式不仅能用于存储线性结构,还可以用来存放非线性结构,例如完全二叉树是属于非线性结构,但其最佳存储方式是顺序存储方式。(后一节介绍)( × )10. 线性表的逻辑顺序与存储顺序总是一致的。错,理由同7。链式存储就无需一致。三、单项选择题(每小题1分,共10分)( C )1数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为:(A)存储结构 (B)逻辑结构 (C)顺序存储结构 (D)链式存储结构( B )2.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是 (A)110 (B)108 (C)100 (D)120( A )3. 在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是:(A) 访问第i个结点(1in)和求第i个结点的直接前驱(2in) (B) 在第i个结点后插入一个新结点(1in)(C) 删除第i个结点(1in)(D) 将n个结点从小到大排序( B )4. 向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动 个元素(A)8 (B)63.5 (C)63 (D)7( A )5. 链接存储的存储结构所占存储空间:(A) 分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针(B) 只有一部分,存放结点值(C) 只有一部分,存储表示结点间关系的指针(D) 分两部分,一部分存放结点值,另一部分存放结点所占单元数( B )6. 链表是一种采用 存储结构存储的线性表;(A)顺序 (B)链式 (C)星式 (D)网状( D )7. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址:(A)必须是连续的 (B)部分地址必须是连续的(C)一定是不连续的 (D)连续或不连续都可以( B )8 线性表在 情况下适用于使用链式结构实现。()需经常修改中的结点值 ()需不断对进行删除插入 ()中含有大量的结点 ()中结点结构复杂( C )9 单链表的存储密度()大于1; ()等于1; ()小于1; ()不能确定( B )10 设a1、a2、a3为3个结点,整数P0,3,4代表地址,则如下的链式存储结构称为P034P0àa13àa24àA30()循环链表 ()单链表 ()双向循环链表 ()双向链表四、简答题(每小题5分,共10分)1. 【严题集2.3】试比较顺序存储结构和链式存储结构的优缺点。在什么情况下用顺序表比链表好?答: 顺序存储时,相邻数据元素的存放地址也相邻(逻辑与物理统一);要求内存中可用存储单元的地址必须是连续的。优点:存储密度大(1?),存储空间利用率高。缺点:插入或删除元素时不方便。链式存储时,相邻数据元素可随意存放,但所占存储空间分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针优点:插入或删除元素时很方便,使用灵活。缺点:存储密度小(<1),存储空间利用率低。顺序表适宜于做查找这样的静态操作;链表宜于做插入、删除这样的动态操作。若线性表的长度变化不大,且其主要操作是查找,则采用顺序表;若线性表的长度变化较大,且其主要操作是插入、删除操作,则采用链表。2 .【严题集2.1】描述以下三个概念的区别:头指针、头结点、首元结点(第一个元素结点)。在单链表中设置头结点的作用是什么?答:首元结点是指链表中存储线性表中第一个数据元素a1的结点。为了操作方便,通常在链表的首元结点之前附设一个结点,称为头结点,该结点的数据域中不存储线性表的数据元素,其作用是为了对链表进行操作时,可以对空表、非空表的情况以及对首元结点进行统一处理。头指针是指向链表中第一个结点(或为头结点或为首元结点)的指针。若链表中附设头结点,则不管线性表是否为空表,头指针均不为空。否则表示空表的链表的头指针为空。这三个概念对单链表、双向链表和循环链表均适用。是否设置头结点,是不同的存储结构表示同一逻辑结构的问题。 头结点headàdatalink 头指针 首元结点简而言之,头指针是指向链表中第一个结点(或为头结点或为首元结点)的指针;头结点是在链表的首元结点之前附设的一个结点;数据域内只放空表标志和表长等信息(内放头指针?那还得另配一个头指针!)首元素结点是指链表中存储线性表中第一个数据元素a1的结点。五、【软考题】线性表具有两种存储方式,即顺序方式和链接方式。现有一个具有五个元素的线性表L=23,17,47,05,31,若它以链接方式存储在下列100119号地址空间中,每个结点由数据(占2个字节)和指针(占2个字节)组成,如下所示:05U17X23V31Y47Z100120其中指针X,Y,Z的值分别为多少?该线性表的首结点起始地址为多少?末结点的起始地址为多少?(10分)答:X= 116 Y= 0 Z= 100 首址= 108 末址= 112 六、阅读分析题(10分)【严题集2.10】指出以下算法中的错误和低效(即费时)之处,并将它改写为一个既正确又高效的算法。注:上题涉及的类型定义如下:# define LIST INIT SIZE 100# define LISTINCREMENT 10typedef struct Elem Type *elem; /存储空间基址Int length; /当前长度Int listsize; /当前分配的存储容量SqList;Status DeleteK(SqList&a, int i, int k)/本过程从顺序存储结构的线性表a中删除第i个元素起的k个元素if ( i<1 | k<0 | i+k> a.length ) return INFEASIBLE; /参数不合法elsefor(count = 1; count <k; count + ) /删除一个元素for ( j = a.length; j>=i+1; j-) a.elemj-1 = a.elemj;a.length - -; return OK; / DeleteK答:错误有两处: 参数不合法的判别条件不完整。例如表长为10,若从第一位置(i=1)删除10个元素(k=10),要求合理但会被判为非法。合法的入口参数条件为(0<ia.length) (0ka.length-i) 应将if ( i<1 | k<0 | i+k> a.length ) return INFEASIBLE改为:if (!(0<ia.length) (oka.length-i))) return INFEASIBLE第二个FOR语句中,元素前移的次序错误。应将for ( j = a.length; j>=i+1; j-) a.elemj-1 = a.elemj;改为for (j>=i+1; j = a.length; j+) a.elemj-1 = a.elemj;七、编程题(每题10分,共40分)invsl(n,a)int n;ET a;int k;ET t;for (k=1; k<=n/2; k+)t=ak-1; ak-1=an-k; an-k=t;return;1. 【徐士良题集,2002年1月省统考题】写出在顺序存储结构下将线性表逆转的算法,要求使用最少的附加空间。解:输入:长度为n的线性表数组A(1:n)输出:逆转后的长度为n的线性表数组A(1:n)。C语言描述如下(其中ET为数据元素的类型):2. 【严题集2.6】已知L是无表头结点的单链表,且P结点既不是首元结点,也不是尾元结点,请写出在P结点后插入S结点的核心语句序列。答:此题答案不唯一,但若从已给定序列中挑选,则限制颇多。(7) Q=P;已知P结点,则不必“顺藤摸瓜”,直接链接即可。(4) S->next=P->next;(1) P->next=S;(11) P=L;(8) while(P->next!=Q)P=P->next;(10) P=Q;(4) S->next=P->next;P->next=S;3. 编写程序,将若干整数从键盘输入,以单链表形式存储起来,然后计算单链表中结点的个数(其中指针P指向该链表的第一个结点)。 注:统计结点个数是【省统考样题】的要求,也是教材P60 4-6计算链表长度的要求,编程又简单,很容易作为考题。解:编写C程序如下(已上机通过):全局变量及函数提前说明:-#include<stdio.h>#include<stdlib.h>typedef struct liuyuint data;struct liuyu*link;test;liuyu *p,*q,*r,*head;int m=sizeof(test);void main () /*第一步,从键盘输入整数,不断添加到链表*/int i;head=(test*)malloc(m); /*m=sizeof(test);*/p=head; i=0;while (i!=-9999) printf("/ninput an integer stop by '-9999':");scanf("%d",&i);p->data=i; /* input data is saved */p->link=(test*)malloc(m); /*m=sizeof(test);*/q=p;p=p->link;q->link=NULL; /*原先用p->link=NULL似乎太晚!*/ p=head; i=0; /*统计链表结点的个数并打印出来*/while (p->link!=NULL)printf("%d",p->data);p=p->link;i+;printf("n node number=%dn", i-1); /*结点的个数不包括-9999*/0301陈建武:3.程序中统计结点数应是i个,而不是i-1.假设链表表长为n,i从0开始,则在统计某一结点后 i 加一,此时p已指向下一个结点,第一结点统计结束,i为1,p指向第二结点即当p指向尾结点(第n个结点)时i的值为n-1,while循环条件不符(指针域为null),退出循环,即得统计的结点数,为n-1.所以 i 的值就是结点数,不必再减一4. 请编写26个字母按特定字母值插入或删除的完整程序,可自行选用顺序存储或链表结构。答:#include<stdio.h> /*全局变量及函数提前说明:*/#include<stdlib.h>typedef struct liuyuchar data;struct liuyu*link;test;liuyu *p,*q,*r,*head;int L; /*元素的个数*/int m=sizeof(test);void build(); /* 主函数中会被调用的函数应当预先说明 */void display();int insert_char(char,char); /*插入一个字母,在第字母Y之前,若无字母则加到末尾*/int delet_char(char); /* 删除元素X,注意保存X的前趋元素指针! */*-*/void build() /*字母链表的生成*/int i;head=(test*)malloc(m); /*m=sizeof(test);*/p=head;for(i=1;i<L;i+) p->data=i+'a'-1; /* 'a'也可用其ASCII码97来表示 */p->link=(test*)malloc(m); /*m=sizeof(test);*/p=p->link; p->data=i+'a'-1;p->link=NULL;/*-*/void display() /*字母链表的输出*/p=head;while (p->link!=NULL) printf("%c",p->data);p=p->link; printf("%cn",p->data);/*-*/int insert_char(char X,char Y) /*插入一个字母X在某个字母Y之前,若找不到Y字母则加到末尾*/p=head;r=(test*)malloc(m);r->data=X;if(head->data=Y) head=r; r->link=p; else while(p->data!=Y)&&(p->link!=NULL) q=p; p=p->link; if(p->data=Y) q->link=r; r->link=p; elsep->link=r;r->link=NULL; L+;return(0);/*-*/int delet_char(char X) /* 删除元素X,注意保存X的前趋元素指针! */ p=head;if(head->data=X)head=head->link;free(p);else while(p->data!=X)&&(p->link!=NULL)q=p; p=p->link;if(p->data=X) q->link=p->link; free(p); else return(-1);L-;return(0);/*-*/void main(void) /*字母线性表的生成和输出*/ L=26; build();display();printf("insert return value=%dn",insert_char('L','W');display();printf("delete return value=%dn",delet_char('z');display();附:屏幕上显示的执行结果是:a b c d e f g h i j k l m n o p q r s t u v w x y zinsert return value=0a b c d 9 e f g h i j k l m n o p q r s t u v w x y z Ldelete return value=0a b c d e f g h i j k l m n o p q r s t u v w x y L0301陈建武修改意见:一. display()函数代码可优化为四行void display() /*字母链表的输出*/p=head;while (p->link!=NULL)/改为while(p),因为当p指向尾结点时,p不为null,条件成立循环, /printf(),然后p被赋值为null,此时循环条件不符退出,正好. printf("%c",p->data);p=p->link; printf("%cn",p->data); /用while(p),此行可删二.对int insert_char(char X,char Y) ,若用带头结点的链表,代码可减为10行我的程序如下(若参数没有slist p,代码要多一行,让q指向头指针)void InsertFind(slist p,char insertchar,char insertpos)/字母insertpos前插入字母insertchar slist pprior,newnode; /newnode新结点,pprior为插入位置结点的直接前驱 newnode = new liuyu;/为新结点分配内存 newnode->data = insertchar; /对结点数据域初始化 while(p) /当p指向尾结点时最后一次循环 pprior = p; /pprior从头指针开始,指向p的直接前驱 p = p->next; /p从首元结点开始,不断前移 ,直至最后,p为null if(p&&(p->data = insertpos) /当p为null或者结点p的数据域为所要插入的字母,break; /则退出循环 newnode->next = pprior->next; /在找到的位置前插入 pprior->next = newnode; 对删除结点的操作,若有头结点,同样可以减少代码,由此可见创建一个头结点对简化程序有很大的帮助.上面的观点,仅供参考,不对之处,请指教!第3章 栈和队列 自测卷答案 姓名 班级 题号一二三四五六总分题分151020202015100得分一、填空题(每空1分,共15分)1. 【李春葆】向量、栈和队列都是 线性 结构,可以在向量的 任何 位置插入和删除元素;对于栈只能在 栈顶 插入和删除元素;对于队列只能在 队尾 插入和 队首 删除元素。2. 栈是一种特殊的线性表,允许插入和删除运算的一端称为 栈顶 。不允许插入和删除运算的一端称为 栈底 。3. 队列 是被限定为只能在表的一端进行插入运算,在表的另一端进行删除运算的线性表。4. 在一个循环队列中,队首指针指向队首元素的 前一个 位置。5. 在具有n个单元的循环队列中,队满时共有 n-1 个元素。6. 向栈中压入元素的操作是先 移动栈顶指针 ,后 存入元素 。7. 从循环队列中删除一个元素时,其操作是 先 移动队首指针 ,后 取出元素 。8. 00年统考题带表头结点的空循环双向链表的长度等于 0 。L=head头结点R=headhead解:二、判断正误(判断下列概念的正确性,并作出简要的说明。)(每小题1分,共10分)( × )1. 线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。 错,线性表是逻辑结构概念,可以顺序存储或链式存储,与元素数据类型无关。

    注意事项

    本文(《C语言数据结构》第1至9章自测题答案大全.doc)为本站会员(yyf)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开