数据结构第四章考试题库(含答案)

合集下载

数据结构第四章考试题库(含答案)

数据结构第四章考试题库(含答案)

第四章串一、选择题1.下面关于串的的叙述中,哪一个是不正确的()【北方交通大学 2001 一、5(2分)】A.串是字符的有限序列 B.空串是由空格构成的串C.模式匹配是串的一种重要运算 D.串既可以采用顺序存储,也可以采用链式存储2 若串S1=‘ABCDEFG’, S2=‘9898’ ,S3=‘###’,S4=‘012345’,执行concat(replace(S1,substr(S1,length(S2),length(S3)),S3),substr(S4,index (S2,‘8’),length(S2)))其结果为()【北方交通大学 1999 一、5 (25/7分)】A.ABC###G0123 B.ABCD###2345 C.ABC###G2345 D.ABC###2345E.ABC###G1234 F.ABCD###1234 G.ABC###012343.设有两个串p和q,其中q是p的子串,求q在p中首次出现的位置的算法称为()A.求子串 B.联接 C.匹配 D.求串长【北京邮电大学 2000 二、4(20/8分)】【西安电子科技大学 1996 一、1 (2分)】4.已知串S=‘aaab’,其Next数组值为()。

【西安电子科技大学 1996 一、7 (2分)】A.0123 B.1123 C.1231 D.12115.串‘ababaaababaa’的next数组为()。

【中山大学 1999 一、7】A.0 B.012121111212 C.0 D.06.字符串‘ababaabab’的nextval 为()A.(0,1,0,1,04,1,0,1) B.(0,1,0,1,0,2,1,0,1)C.(0,1,0,1,0,0,0,1,1) D.(0,1,0,1,0,1,0,1,1 )【北京邮电大学 1999 一、1(2分)】7.模式串t=‘abcaabbcabcaabdab’,该模式串的next数组的值为(),nextval 数组的值为()。

数据结构1-4章习题答案

数据结构1-4章习题答案

第1章概论习题参考解答一、填空题1、数据的逻辑结构是数据元素之间的逻辑关系,通常有下列4类:()、()、()、()。

【答】集合、线性结构、树型结构和图状结构。

2、数据的存储结构是数据在计算机存储器里的表示,主要有4种基本存储方法:()、()、()、()。

【答】顺序存储方法、链接存储方法、索引存储方法和散列存储方法。

二、选择题1、一个算法必须在执行有穷步之后结束,这是算法的()。

(A)正确性(B)有穷性(C)确定性(D)可行性【答】B。

2、算法的每一步,必须有确切的定义。

也就是说,对于每步需要执行的动作必须严格、清楚地给出规定。

这是算法的()。

(A)正确性(B)有穷性(C)确定性(D)可行性【答】C。

3、算法原则上都是能够由机器或人完成的。

整个算法好像是一个解决问题的“工作序列”,其中的每一步都是我们力所能及的一个动作。

这是算法的()。

(A)正确性(B)有穷性(C)确定性(D)可行性【答】D。

三、简答题1、算法与程序有何异同?【答】尽管算法的含义与程序非常相似,但两者还是有区别的。

首先,一个程序不一定满足有穷性,因此它不一定是算法。

例如,系统程序中的操作系统,只要整个系统不遭受破坏,它就永远不会停止,即使没有作业要处理,它仍处于等待循环中,以待一个新作业的进入。

因此操作系统就不是一个算法。

其次,程序中的指令必须是计算机可以执行的,而算法中的指令却无此限止。

如果一个算法采用机器可执行的语言来书写,那么它就是一个程序。

2、什么是数据结构?试举一个简单的例子说明。

【答】数据结构是指数据对象以及该数据对象集合中的数据元素之间的相互关系(即数据元素的组织形式)。

例如,队列的逻辑结构是线性表(先进先出);队列在计算机中既可以采用顺序存储也可以采用链式存储;对队列可进行删除、插入数据元素以及判断是否为空队列、将队列置空等操作。

3、什么是数据的逻辑结构?什么是数据的存储结构?【答】数据元素之间的逻辑关系,也称为数据的逻辑结构。

数据结构单元4练习参考答案

数据结构单元4练习参考答案

单元测验4一.判断题(下列各题,正确的请在前面的括号内打√;错误的打╳)(√)(1)队列是限制在两端进行操作的线性表。

(√)(2)判断顺序队列为空的标准是头指针和尾指针都指向同一个结点。

(×)(3)在链队列上做出队操作时,会改变front指针的值。

(√)(4)在循环队列中,若尾指针rear大于头指针front,其元素个数为rear- front。

(×)(5)在单向循环链表中,若头指针为h,那么p所指结点为尾结点的条件是p=h。

(√)(6)链队列在一定范围内不会出现队满的情况。

(×)(7)在循环链队列中无溢出现象。

(×)(8)栈和队列都是顺序存储的线性结构。

(×)(9)在队列中允许删除的一端称为队尾。

(×)(10)顺序队和循环队关于队满和队空的判断条件是一样的。

二.填空题(1)在队列中存取数据应遵循的原则是先进先出。

(2)队列是被限定为只能在表的一端进行插入运算,在表的另一端进行删除运算的线性表。

(3)在队列中,允许插入的一端称为队尾。

(4)在队列中,允许删除的一端称为队首(或队头)。

(5)队列在进行出队操作时,首先要判断队列是否为空。

(6)顺序队列在进行入队操作时,首先要判断队列是否为满。

(7)顺序队列初始化后,front=rear= -1 。

(8)解决顺序队列“假溢出”的方法是采用循环队列。

(9)循环队列的队首指针为front,队尾指针为rear,则队空的条件为 front == rear 。

(10)链队列LQ为空时,LQ->front->next= NULL 。

(11)设长度为n的链队列用单循环链表表示,若只设头指针,则入队操作的时间复杂度为 O(n)。

(12)设长度为n的链队列用单循环链表表示,若只设尾指针,则出队操作的时间复杂度为 0(1)。

(13)在一个链队列中,若队首指针与队尾指针的值相同,则表示该队列为空。

(14)设循环队列的头指针front指向队首元素,尾指针rear指向队尾元素后的一个空闲元素,队列的最大空间为MAXLEN,则队满标志为:front==(rear+1)%MAXLEN 。

(完整word版)数据结构 第四章(串) 考试题目(word文档良心出品)

(完整word版)数据结构 第四章(串) 考试题目(word文档良心出品)

第四章串一单项选择题:1.下列那些为空串()A)S=“ ” B)S=“”C)S=“φ” D)S=“θ”2.S1=“ABCD”,S2=“CD”则S2在S3中的位置是()A)1 B)2 C)3D)43.假设S=“abcaabcaaabca”,T=“bca”,Index (S,T,3) 的结果是()A)2 B)6 C)11 D)04.在串中,对于SubString(&Sub,S,pos,len)基本操作,pos和len的约束条件是()A)0<pos<StrLength(S)+1且1<=len<=StrLength(S)-pos+1B)0<pos<StrLength(S)+1且0<=len<=StrLength(S)-pos-1C)1<=pos<=StrLength(S) 且0<=len<=StrLength(S)-pos+1D)1<=pos<=StrLength(S) 且1<=len<=StrLength(S)-pos-15. 串是一种特殊的线性表,其特殊性体现在( )。

A.可以顺序存储B. 数据元素是一个字符C.可以链接存储D. 数据元素可以是多个字符6. 串是( )。

A.少于一个字母的序列B. 任意个字母的序列C.不少于一个字符的序列D. 有限个字符的序列7. 串的长度是( )。

A.串中不同字母的个数B. 串中不同字符的个数C.串中所含的字符的个数D. 串中所含字符的个数,且大于08. 设有S1=‘ABCDEFG’,S2=‘PQRST’,函数con(x,y)返回x和y串的连接串,subs(I,j)返回串S的从序号I的字符开始的j个字符组成的子串,len(s)返回串s的长度,则con(subs(S1,2,len(S2)),subs(S1,len(S2),2))的结果是( )。

A.BCDEF B. BCDEFG C. BCPQRST D. BCDEFEF9. 若某串的长度小于一个常数,则采用( )存储方式最为节省空间。

吉林省专升本数据结构习题及答案——第四章

吉林省专升本数据结构习题及答案——第四章

吉林省专升本考试数据结构分章习题及参考答案———选择题(第四章)1、多维数组之所以有行优先顺序和列优先顺序两种存储方式是因为( )。

A、数组的元素处在行和列两个关系中B、数组的元素必须从左到右顺序排列C、数组的元素之间存在次序关系D、数组是多维结构,内存是一维结构2、串的长度是()A、串中不同字母的个数B、串中不同字符的个数C、串中所含字符的个数D、串中所含字符的个数,且大于03、串与普通的线性表相比较,它的特殊性体现在()。

A、顺序的存储结构B、链式存储结构C、数据元素是一个字符D、数据元素任意4、若对n阶对称矩阵A以行序为主序方式将其下三角形的元素(包括主对角线上所有元素)依次存放于一维数组B[1……n(n+1)/2]中,则在B中确定aij(i<j)的位置k的关系为( )。

A、i*(i-1)/2+jB、j*(j-1)/2+iC、i*(i+1)/2+jD、j*(i+1)/2+i5、有一个100*90的稀疏矩阵,非0元素有10个,设每个整型数占2字节,则用三元组表示该矩阵时,所需的字节数是()。

A、60B、66C、18000D、336、若6行8列的数组以列序为主序顺序存储,基地址为1000,每个元素占2个存储单元,则第5行第3列的元素(假定无第0行第0列)的地址是()。

A、 1086B、 1032C、 1068D、答案A,B,C都不对7、下面的说法中,不正确的是()A、数组是一种线性结构B、数组是一种定长的线性结构C、除了插入与删除操作外,数组的基本操作还有存取修改、检索和排序等D、数组的基本操作有存取、修改、检索和排序等,没有插入与删除操作8、设有一个n*n的对称矩A,将其下三角部分按行存放在一维数组B中,而A[0][0]存放于B[0]中,那么第i行对角线元素A[i][i]存放于B中( ) 处。

A、(i+3)i/2B、(i+1)i/2C、(2n-i+1)i/2D、(2n-i-1)i/29、设模式T=“abcabc”,则该模式的next值为()A、{-1,0,0,1,2,3}B、{-1,0,0,0,1,2}C、{-1,0,0,1,1,2}D、{-1,0,0,0,2,3}10、下面()不属于特殊矩阵。

数据结构 第四章测验 测验答案 慕课答案 UOOC优课 课后练习 深圳大学

数据结构 第四章测验 测验答案 慕课答案 UOOC优课 课后练习 深圳大学

数据结构第四章测验一、单选题 (共100.00分)1. 以下结构中,哪一个是属于逻辑结构()A. 顺序表B. 链栈C. 循环队列D. 串正确答案:D2. 以下哪一种是串在计算机中的常见表示方式()A. 定长顺序B. 堆分配C. 块链D. 前三种都是正确答案:D3. 在数据结构中,串可以等同于()的处理A. 整数串B. 浮点数串C. 字符串D. 多种类型的数组正确答案:C4. 以下哪一种是串匹配的常用算法()A. 普里姆算法B. 克鲁斯卡尔算法C. KMP算法D. 关键路径算法正确答案:C5. 已知主串为abcbcaddabc,模式串为cad,假设串位置从1开始,则串匹配位置是()A. 3B. 5C. 7D. 不存在正确答案:B6. 已知模式串为abaab,则next数组为()A. 1122B. 22312C. 1212D. 1112正确答案:A7. 已知串S的内容为1+2+3,以下描述哪一个是正确的()A. 串S的长度是6B. 串S的运算结果是6C. 整数1是串S的子串D. 符号+是串S的子串正确答案:D8. 以下描述哪一个是正确的()A. 串是字符有限序列B. 串是整数、浮点数、字符等多种数据的有限序列C. 只包含空格的串称为空串D. 串只能使用顺序表存储正确答案:A9. 串的长度是指()A. 串中包含不同字母的个数B. 串中所含字符的个数C. 串中包含不同字符的个数D. 串中包含非空格的字符的个数正确答案:B10. 串函数Sub(S, x, y)表示在串S中,从x位置开始,取出y个字符,串位置从1开始计算。

已知串S内容为Shenzh en,则Sub(S, 2, 3)是()A. SheB. zhenC. ShenD. hen正确答案:D。

数据结构第四章串习题及答案

数据结构第四章串习题及答案

习题四串一、单项选择题‎1.下面关于串‎的的叙述中‎,哪一个是不‎正确的?()A.串是字符的‎有限序列 B.空串是由空‎格构成的串‎C.模式匹配是‎串的一种重‎要运算 D.串既可以采‎用顺序存储‎,也可以采用‎链式存储2.串是一种特‎殊的线性表‎,其特殊性体‎现在()。

A.可以顺序存‎储 B.数据元素是‎一个字符C.可以链接存‎储 D.数据元素可‎以是多个字‎符3.串的长度是‎指()A.串中所含不‎同字母的个‎数 B.串中所含字‎符的个数C.串中所含不‎同字符的个‎数 D.串中所含非‎空格字符的‎个数4.设有两个串‎p和q,其中q是p‎的子串,求q在p中‎首次出现的‎位置的算法‎称为()A.求子串 B.联接 C.匹配 D.求串长5.若串S=“softw‎a re”,其子串的个‎数是()。

A.8 B.37 C.36 D.9二、填空题1.含零个字符‎的串称为_‎_____‎串。

任何串中所‎含____‎__的个数‎称为该串的‎长度。

2.空格串是指‎__ __,其长度等于‎__ __。

3.当且仅当两‎个串的__‎____相‎等并且各个‎对应位置上‎的字符都_‎_____‎时,这两个串相‎等。

一个串中任‎意个连续字‎符组成的序‎列称为该串‎的____‎__串,该串称为它‎所有子串的‎_____‎_串。

4.INDEX‎(‘DATAS‎T RUCT‎U RE’,‘STR’)=_____‎___。

5.模式串P=‘abaab‎c ac’的next‎函数值序列‎为____‎____。

6.下列程序判‎断字符串s‎是否对称,对称则返回‎1,否则返回0‎;如 f("abba")返回1,f("abab")返回0;int f((1)__ _____‎_){int i=0,j=0;while‎(s[j])(2)___ _____‎;for(j--; i<j && s[i]==s[j]; i++,j--);retur‎n((3)___ ____)}7.下列算法实‎现求采用顺‎序结构存储‎的串s和串‎t的一个最‎长公共子串‎。

数据结构第四章的习题答案

数据结构第四章的习题答案

数据结构第四章的习题答案数据结构第四章的习题答案在学习数据结构的过程中,习题是非常重要的一环。

通过解答习题,我们可以更好地理解和应用所学的知识。

在第四章中,我们学习了树和二叉树的相关概念和操作。

下面我将为大家提供一些第四章习题的答案,希望能帮助大家更好地掌握这一章节的内容。

1. 请给出树和二叉树的定义。

树是由n(n>=0)个结点构成的有限集合,其中有且仅有一个特定的结点称为根结点,其余的结点可以分为若干个互不相交的有限集合,每个集合本身又是一个树,称为根的子树。

二叉树是一种特殊的树结构,其中每个结点最多有两个子结点,分别称为左子结点和右子结点。

二叉树具有递归的定义,即每个结点的左子树和右子树都是二叉树。

2. 请给出树和二叉树的遍历方式。

树的遍历方式包括前序遍历、中序遍历和后序遍历。

前序遍历是先访问根结点,然后依次遍历左子树和右子树。

中序遍历是先遍历左子树,然后访问根结点,最后遍历右子树。

后序遍历是先遍历左子树和右子树,最后访问根结点。

二叉树的遍历方式包括前序遍历、中序遍历和后序遍历。

前序遍历是先访问根结点,然后依次遍历左子树和右子树。

中序遍历是先遍历左子树,然后访问根结点,最后遍历右子树。

后序遍历是先遍历左子树和右子树,最后访问根结点。

3. 给定一个二叉树的前序遍历序列和中序遍历序列,请构建该二叉树。

这个问题可以通过递归的方式解决。

首先,根据前序遍历序列的第一个结点确定根结点。

然后,在中序遍历序列中找到根结点的位置,该位置左边的结点为左子树的中序遍历序列,右边的结点为右子树的中序遍历序列。

接下来,分别对左子树和右子树进行递归构建。

4. 给定一个二叉树的中序遍历序列和后序遍历序列,请构建该二叉树。

和前面的问题类似,这个问题也可以通过递归的方式解决。

首先,根据后序遍历序列的最后一个结点确定根结点。

然后,在中序遍历序列中找到根结点的位置,该位置左边的结点为左子树的中序遍历序列,右边的结点为右子树的中序遍历序列。

数据结构的第4-7习题的答案

数据结构的第4-7习题的答案

4.10 线性表有两种存储结构,即顺序表和单链表。试问: (1)若有N个线性表同时并存,且在处理过程中各表长度会
动态发生变化,线性表的总数也会自动地改变,在此情况下 应选用哪种存储结构?为什么?
应采用链式存储结构,因为采用链式存储时插入删除操作不需 要移动数据元素
(2)若线性表的总数基本稳定,且很少进行插入和删除操作 ,但要以最快的速度存取表中元素,那么应采用哪种存储结 构?为什么?
pq
pq r
rq
head *
A
1
&C
3
$
D
E^
p=NULL r=NULL
Void invert(LinkList &head) { linklist p,q,r;
p=r=NULL; q=head; while(q!=NULL) {r=q->next; q->next=p; p=q; q=r; } head=p; }
3在长度为n的顺序表上进行 插入运算,有几个可插入的 位置?在第i(假设合法)个 位置上插入一个数据元素, 需要向什么方向平移多少个 数据元素?在长度为n的顺 序表上进行删除运算,有几 个可删除的数据元素?删除 第i(假设合法)个位置上的 数据元素,需要向什么方向 平移多少个数据元素?
1
2
第i个位置上插入,需向右移 动n-i+1个数据元素
Status EnQueue(stack &s1,ElemType x) { if(S1.top==n-1) return 0;
else {Push(s1,x); return 1;}} 时间复杂度T(n)=O(1)
Status DeQueue(stack &s1,Stack &s2,ElemType &x) { ElemType y; While(!StackEmpty(S1))

数据结构考试题库含答案

数据结构考试题库含答案

数据构造习题集含答案目录目录1选择题2第一章绪论2第二章线性表4第三章栈和队列6第四章串7第五章数组和广义表8第六章树和二叉树8第七章图11第八章查找13第九章排序14简答题19第一章绪论19第二章线性表22第三章栈和队列24第四章串26第五章数组和广义表27第六章树和二叉树28第七章图31第八章查找31第九章排序32编程题34第一章绪论34第二章线性表34第三章栈和队列45第四章串45第五章数组和广义表45第六章树和二叉树45第七章图45第八章查找45第九章排序50选择题第一章绪论1.数据构造这门学科是针对什么问题而产生的?〔A 〕A、针对非数值计算的程序设计问题B、针对数值计算的程序设计问题C、数值计算与非数值计算的问题都针对D、两者都不针对2.数据构造这门学科的研究容下面选项最准确的是〔D 〕A、研究数据对象和数据之间的关系B、研究数据对象C、研究数据对象和数据的操作D、研究数据对象、数据之间的关系和操作3.*班级的学生成绩表中查得三同学的各科成绩记录,其中数据构造考了90分,则下面关于数据对象、数据元素、数据项描述正确的选项是〔C 〕A、*班级的学生成绩表是数据元素,90分是数据项B、*班级的学生成绩表是数据对象,90分是数据元素C、*班级的学生成绩表是数据对象,90分是数据项D、*班级的学生成绩表是数据元素,90分是数据元素4.*数据构造是指〔A 〕。

A、数据元素的组织形式B、数据类型C、数据存储构造D、数据定义5.数据在计算机存储器表示时,物理地址与逻辑地址不一样,称之为〔C 〕。

A、存储构造B、逻辑构造C、链式存储构造D、顺序存储构造6.算法分析的目的是〔C 〕A、找出数据的合理性B、研究算法中的输入和输出关系C、分析算法效率以求改良D、分析算法的易懂性和文档型性7.算法分析的主要方法〔A 〕。

A、空间复杂度和时间复杂度B、正确性和简明性C、可读性和文档性D、数据复杂性和程序复杂性8.计算机部处理的根本单元是〔B 〕A、数据B、数据元素C、数据项D、数据库9.数据在计算机有链式和顺序两种存储方式,在存储空间使用的灵活性上,链式存储比顺序存储要〔B 〕。

《数据结构》第四章习题参考答案

《数据结构》第四章习题参考答案

《数据结构》第四章习题一、判断题(在正确说法的题后括号中打“√”,错误说法的题后括号中打“×”)1、KMP算法的特点是在模式匹配时指示主串的指针不会变小。

( √)2、串是一种数据对象和操作都特殊的线性表。

( √)3、只包含空白字符的串称为空串(空白串)。

( ×)4、稀疏矩阵压缩存储后,必会(不会)失去随机存取功能。

( ×)5、使用三元组表示稀疏矩阵的非零元素能节省存储空间。

( √)6、插入与删除操作是数据结构中最基本的两种操作,因此这两种操作在数组中也经常使用。

(×)7、若采用三元组表存储稀疏矩阵,只要把每个元素的行下标和列下标互换(错的),就完成了对该矩阵的转置运算。

(×)二、单项选择题1.下面关于串的的叙述中,哪一个是不正确的?( B )A.串是字符的有限序列B.空串是由空格构成的串(空串是长度为零的串)C.模式匹配是串的一种重要运算D.串既可以采用顺序存储,也可以采用链式存储2.有串S1=’ABCDEFG’,S2 = ’PQRST’,假设函数con(x,y)返回x和y串的连接串,subs(s,i,j)返回串s的从序号i的字符开始的j个字符组成的子串,len(s)返回中s的长度,则con(subs(s1,2,len(s2)),subs(s1,len(s2),2))的结果串是( D )。

A.BCDEF B.BCDEFG C.BCPQRST D.CDEFGFG3、串的长度是指( B )A.串中所含不同字母的个数B.串中所含字符的个数C.串中所含不同字符的个数D.串中所含非空格字符的个数三、填空题1、串是一种特殊的线性表,其特殊性表现在_数据元素为字符,操作集也不同__;串的两种最基本的存储方式是_顺序存储_、__ 链式存储_;两个串相等的充分必要条件是__两串的长度相等且两串中对应位置的字符也相等__。

2、设正文串长度为n,模式串长度为m,则串匹配的KMP算法的时间复杂度为_O(m+n)__。

数据结构第四章考试题库(含答案)

数据结构第四章考试题库(含答案)

第四章串一、选择题1.下面关于串的的叙述中,哪一个是不正确的?()【北方交通大学 2001 一、5(2分)】A.串是字符的有限序列 B.空串是由空格构成的串C.模式匹配是串的一种重要运算 D.串既可以采用顺序存储,也可以采用链式存储2 若串S1=‘ABCDEFG’, S2=‘9898’ ,S3=‘###’,S4=‘’,执行concat(replace(S1,substr(S1,length(S2),length(S3)),S3),substr(S4,i ndex(S2,‘8’),length(S2))) 其结果为()【北方交通大学 1999 一、5 (25/7分)】A.ABC###G0123 B.ABCD###2345 C.ABC###G2345 D.ABC###2345E.ABC###G1234 F.ABCD###1234 G.ABC###012343.设有两个串p和q,其中q是p的子串,求q在p中首次出现的位置的算法称为()A.求子串 B.联接 C.匹配 D.求串长【北京邮电大学 2000 二、4(20/8分)】【西安电子科技大学 1996 一、1 (2分)】4.已知串S=‘aaab’,其Next数组值为()。

【西安电子科技大学 1996 一、7 (2分)】A.0123 B.1123 C.1231 D.12115.串‘ababaaababaa’的next数组为()。

【中山大学 1999 一、7】A.9 B.2 C.6 D.456.字符串‘ababaabab’的nextval 为()A.(0,1,0,1,04,1,0,1) B.(0,1,0,1,0,2,1,0,1)C.(0,1,0,1,0,0,0,1,1) D.(0,1,0,1,0,1,0,1,1 )【北京邮电大学 1999 一、1(2分)】7.模式串t=‘abcaabbcabcaabdab’,该模式串的next数组的值为(),nextval数组的值为()。

数据结构(C语言版)习题及答案第四章

数据结构(C语言版)习题及答案第四章

数据结构(C语言版)习题及答案第四章习题4.1选择题1、空串与空格串是(B)。

A、相同B、不相同C、不能确定2、串是一种特殊的线性表,其特殊性体现在(B)。

A、可以顺序存储B、数据元素是一个字符C、可以链式存储D、数据元素可以是多个字符3、设有两个串p和q,求q在p中首次出现的位置的操作是(B)。

A、连接B、模式匹配C、求子串D、求串长4、设串1=“ABCDEFG”,2=“PQRST”函数trconcat(,t)返回和t串的连接串,trub(,i,j)返回串中从第i个字符开始的、由连续j 个字符组成的子串。

trlength()返回串的长度。

则trconcat(trub(1,2,trlength(2)),trub(1,trlength(2),2))的结果串是(D)。

A、BCDEFB、BCDEFGC、BCPQRSTD、BCDEFEF5、若串=“oftware”,其子串个数是(B)。

A、8B、37C、36D、94.2简答题1、简述空串与空格串、主串与子串、串名与串值每对术语的区别?答:空串是指长度为0的串,即没有任何字符的串。

空格串是指由一个或多个空格组成的串,长度不为0。

子串是指由串中任意个连续字符组成的子序列,包含子串的串称为主串。

串名是串的一个名称,不指组成串的字符序列。

串值是指组成串的若干个字符序列,即双引号中的内容。

2、两个字符串相等的充要条件是什么?答:条件一是两个串的长度必须相等条件二是串中各个对应位置上的字符都相等。

3、串有哪几种存储结构?答:有三种存储结构,分别为:顺序存储、链式存储和索引存储。

4、已知两个串:1=”fgcdbcabcadr”,2=”abc”,试求两个串的长度,判断串2是否是串1的子串,并指出串2在串1中的位置。

答:(1)串1的长度为14,串2的长度为3。

(2)串2是串1的子串,在串2中的位置为9。

5、已知:1=〃I’matudent〃,2=〃tudent〃,3=〃teacher〃,试求下列各操作的结果:trlength(1);答:13trconcat(2,3);答:”tudentteachar”trdelub(1,4,10);答:I’m6、设1=”AB”,2=”ABCD”,3=”EFGHIJK,试画出它们在各种存储结构下的结构图。

数据结构第4章答案

数据结构第4章答案

一、填空题(每空1分,共15分)1. 向量、栈和队列都是线性结构,可以在向量的任何位置插入和删除元素;对于栈只能在栈顶插入和删除元素;对于队列只能在队尾插入和队首删除元素。

2. 栈是一种特殊的线性表,允许插入和删除运算的一端称为栈顶。

不允许插入和删除运算的一端称为栈底。

3. 队列是被限定为只能在表的一端进行插入运算,在表的另一端进行删除运算的线性表。

4. 在一个循环队列中,队首指针指向队首元素的前一个位置。

5. 在具有n个单元的循环队列中,队满时共有n-1 个元素。

6. 向栈中压入元素的操作是先存入元素,后移动栈顶指针。

7.从循环队列中删除一个元素时,其操作是先移动队首指针,后取出元素。

8.带表头结点的空循环双向链表的长度等于0。

二、判断正误(判断下列概念的正确性,并作出简要的说明。

)(每小题1分,共10分)(×)1. 线性表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。

(×)2. 在表结构中最常用的是线性表,栈和队列不太常用。

(√)3. 栈是一种对所有插入、删除操作限于在表的一端进行的线性表,是一种后进先出型结构。

(√)4. 对于不同的使用者,一个表结构既可以是栈,也可以是队列,也可以是线性表。

(×)5. 栈和链表是两种不同的数据结构。

(×)6. 栈和队列是一种非线性数据结构。

(√)7. 栈和队列的存储方式既可是顺序方式,也可是链接方式。

(√)8. 两个栈共享一片连续内存空间时,为提高内存利用率,减少溢出机会,应把两个栈的栈底分别设在这片内存空间的两端。

(×)9. 队是一种插入与删除操作分别在表的两端进行的线性表,是一种先进后出型结构。

(×)10. 一个栈的输入序列是12345,则栈的输出序列不可能是12345。

三、单项选择题(每小题1分,共20分)(B)1.栈中元素的进出原则是A.先进先出B.后进先出C.栈空则进D.栈满则出(C)2. 若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,pn,若p1=n,则pi为A.i B.n=i C.n-i+1 D.不确定(B)3. 判定一个栈ST(最多元素为m0)为空的条件是A.ST->top<>0 B.ST->top=0 C.ST->top<>m0 D.ST->top=m0(A)4. 判定一个队列QU(最多元素为m0)为满队列的条件是A.QU->rear-QU->front = = m0 B.QU->rear -QU->front -1= = m0 C.QU->front = = QU->rear D.QU->front = = QU->rear+1(D)5.数组Q[n]用来表示一个循环队列,f为当前队列头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数小于n,计算队列中元素的公式为(A)r-f; (B)(n+f-r)% n;(C)n+r-f; (D)(n+r-f)% n6.设有4个数据元素a1、a2、a3和a4,对他们分别进行栈操作或队操作。

数据结构第四章参考答案

数据结构第四章参考答案

习题41. 填空题(1)一般来说,数组不执行(___________)和(___________)操作,所以通常采用(___________)方法来存储数组。

通常有两种存储方式:(___________)和(___________)。

答案:删除 插入 顺序存储 行优先存储 列优先存储(2)设8行8列的二维数组起始元素为A[0][0],按行优先存储到起始元素下标为0的一维数组B 中,则元素B[23]在原二维数组中为(___________)。

若该二维数组为上三角矩阵,按行优先压缩存储上三角元素到起始元素下标为0的一维数组C 中,则元素C[23]即为原矩阵中的(___________)元素。

答案:A[2][7] A[3][5](3)设二维数组A 为6行8列,按行优先存储,每个元素占6字节,存储器按字节编址。

已知A 的起始存储地址为1000H ,数组A 占用的存储空间大小为(___________)字节,数组A 的最后一个元素的下标为(___________),该元素的第一个字节地址为(___________)H ,元素A[1][4]的第一个字节的地址为(___________)H 。

(提示:下标从0开始计) 答案:288 A[5][7] 111AH 1048H(4)设C++中存储三维数组A mnp ,则第一个元素为a 000,若按行优先存储,则a ijk 前面共有(___________)个元素;若按列优先存储,则a ijk 前面共有(___________)个元素。

答案:inp+jp+k i+mj+mnk(5)常见的稀疏矩阵压缩方法有:(___________)和(___________)。

答案:三元组表 十字链表 (6)广义表((a ),((b ,c ),d ),(e ))的长度为(___________),表头为(___________),表尾为(___________)。

答案:3 (a ) (((b ,c ),d ),(e )) (7)设广义表LS =((a ),((b ,c ),d ),(e )),若用取表头操作GetHead ()和取表尾操作GetTail ()进行组合操作,则取出元素b 的运算为(___________)。

数据结构试题库集及答案

数据结构试题库集及答案

数据结构试题库及答案第一章概论一、选择题1、研究数据结构就是研究( D )。

A. 数据的逻辑结构B. 数据的存储结构C. 数据的逻辑结构和存储结构D. 数据的逻辑结构、存储结构及其基本操作2、算法分析的两个主要方面是( A )。

A. 空间复杂度和时间复杂度B. 正确性和简单性C. 可读性和文档性D. 数据复杂性和程序复杂性3、具有线性结构的数据结构是( D )。

A. 图B. 树C. 广义表D. 栈4、计算机中的算法指的是解决某一个问题的有限运算序列,它必须具备输入、输出、( B )等5个特性。

A. 可执行性、可移植性和可扩充性B. 可执行性、有穷性和确定性C. 确定性、有穷性和稳定性D. 易读性、稳定性和确定性5、下面程序段的时间复杂度是( C )。

for(i=0;i<m;i++)for(j=0;j<n;j++)a[i][j]=i*j;A. O(m2)B. O(n2)C. O(m*n)D. O(m+n)6、算法是( D )。

A. 计算机程序B. 解决问题的计算方法C. 排序算法D. 解决问题的有限运算序列7、某算法的语句执行频度为(3n+nlog2n+n2+8),其时间复杂度表示( C )。

A. O(n)B. O(nlog2n)C. O(n2)D. O(log2n)8、下面程序段的时间复杂度为( C )。

i=1;while(i<=n)i=i*3;A. O(n)B. O(3n)C. O(log3n)D. O(n3)9、数据结构是一门研究非数值计算的程序设计问题中计算机的数据元素以及它们之间的()和运算等的学科。

A. 结构B. 关系C. 运算D. 算法10、下面程序段的时间复杂度是()。

i=s=0;while(s<n){i++;s+=i;}A. O(n)B. O(n2)C. O(log2n)D. O(n3)11、抽象数据类型的三个组成部分分别为()。

A. 数据对象、数据关系和基本操作B. 数据元素、逻辑结构和存储结构C. 数据项、数据元素和数据类型D. 数据元素、数据结构和数据类型12、通常从正确性、易读性、健壮性、高效性等4个方面评价算法的质量,以下解释错误的是()。

数据结构(C语言版)第4-5章习题答案

数据结构(C语言版)第4-5章习题答案

第4~5章串和数组自测卷答案一、填空题(每空1分,共20分)1. 不包含任何字符(长度为0)的串称为空串;由一个或多个空格(仅由空格符)组成的串称为空白串。

(对应严题集4.1①,简答题:简述空串和空格串的区别)2. 设S=“A;/document/Mary.doc”,则strlen(s)= 20 , “/”的字符定位的位置为3。

4. 子串的定位运算称为串的模式匹配;被匹配的主串称为目标串,子串称为模式。

5. 设目标T=”abccdcdccbaa”,模式P=“cdcc”,则第 6 次匹配成功。

6. 若n为主串长,m为子串长,则串的古典(朴素)匹配算法最坏的情况下需要比较字符的总次数为(n-m+1)*m。

7. 假设有二维数组A6×8,每个元素用相邻的6个字节存储,存储器按字节编址。

已知A的起始存储位置(基地址)为1000,则数组A的体积(存储量)为288 B ;末尾元素A57的第一个字节地址为1282 ;若按行存储时,元素A14的第一个字节地址为(8+4)×6+1000=1072 ;若按列存储时,元素A47的第一个字节地址为(6×7+4)×6+1000)=1276 。

(注:数组是从0行0列还是从1行1列计算起呢?由末单元为A57可知,是从0行0列开始!)8. 〖00年计算机系考研题〗设数组a[1…60, 1…70]的基地址为2048,每个元素占2个存储单元,若以列序为主序顺序存储,则元素a[32,58]的存储地址为8950 。

答:不考虑0行0列,利用列优先公式:LOC(a ij)=LOC(a c1,c2)+[(j-c2)*(d1-c1+1)+i-c1)]*L得:LOC(a32,58)=2048+[(58-1)*(60-1+1)+32-1]]*2=89509. 三元素组表中的每个结点对应于稀疏矩阵的一个非零元素,它包含有三个数据项,分别表示该元素的行下标、列下标和元素值。

数据结构课后习题和解析第四章

数据结构课后习题和解析第四章

第四章习题1. 设s=’I AM A STUDENT’, t=’GOOD’, q=’WORKER’。

给出下列操作的结果:StrLength(s); SubString(sub1,s,1,7); SubString(sub2,s,7,1);StrIndex(s,’A’,4); StrReplace(s,’STUDENT’,q);StrCat(StrCat(sub1,t), StrCat(sub2,q));2. 编写算法,实现串的基本操作StrReplace(S,T,V)。

3. 假设以块链结构表示串,块的大小为1,且附设头结点。

试编写算法,实现串的下列基本操作:StrAsign(S,chars);StrCopy(S,T);StrCompare(S,T);StrLength(S);StrCat(S,T);SubString(Sub,S,pos,len)。

4.叙述以下每对术语的区别:空串和空格串;串变量和串常量;主串和子串;串变量的名字和串变量的值。

5.已知:S=”(xyz)*”,T=”(x+z)*y”。

试利用联接、求子串和置换等操作,将S转换为T.6.S和T是用结点大小为1的单链表存储的两个串,设计一个算法将串S中首次与T匹配的子串逆置。

7.S是用结点大小为4的单链表存储的串,分别编写算法在第k个字符后插入串T,及从第k个字符删除len个字符。

以下算法用定长顺序串:8.编写下列算法:(1)将顺序串r中所有值为ch1的字符换成ch2的字符。

(2)将顺序串r中所有字符按照相反的次序仍存放在r中。

(3)从顺序串r中删除其值等于ch的所有字符。

(4)从顺序串r1中第index 个字符起求出首次与串r2相同的子串的起始位置。

(5)从顺序串r中删除所有与串r1相同的子串。

9.写一个函数将顺序串s1中的第i个字符到第j个字符之间的字符用s2串替换。

10.写算法,实现顺序串的基本操作StrCompare(s,t)。

11.写算法,实现顺序串的基本操作StrReplace(&s,t,v)。

《数据结构》试卷四含答案

《数据结构》试卷四含答案

《数据结构》试卷四一、选择题(本题共20分,每小题1分)1.在数据结构中,从逻辑上可以把数据结构分成()。

A.动态结构和静态结构 B. 紧凑结构和非紧凑结构C. 线性结构和非线性结构D. 内部结构和外部结构2.线性表若采用链式存储结构时,要求内存中可用存储单元的地址 ( ) 。

A. 必须是连续的B. 部分地址必须是连续的C. 一定是不连续的D. 连续不连续都可以3.不带头结点的单链表 head 为空的判定条件是( ) 。

A. head == NULLB. head->next ==NULLC. head->next == headD. head! = NULL4.在一个单链表中,已知 q 所指结点是 p 所指结点的前驱结点,若在 q 和 p 之间插入s 结点,则执行( ) 。

A. s-next=p-next; p-next=s;B. p->next=s->next; s-next=p;C. q->next=s; s->next=p;D. p-next=s; s->next=q;5.从一个具有n个结点的单链表中查找其值等于 x 结点时,在查找成功的情况下,需平均比较( )个结点。

A. nB. n/2C. (n-1)/2D. (n+1)/26.一个栈的入栈序列是 a,b,c,d,e,则栈的不可能的输出序列是( )。

A. edcbaB. decbaC. dceabD. abcde 7.判定一个循环队列 QU(最多元素为 m0)为满队列的条件是( )。

A. QU->front==QU->rearB. QU->front!=QU->rearC. QU->front==(QU->rear+1) % m0D. QU->front!=(QU->rear+1) % m0 8.栈和队列的共同点是( ) 。

A. 都是先进后出B. 都是先进先出C. 只允许在端点处插入和删除元素D. 没有共同点9.数组A中,每个元素A的长度为3个字节,行下标i从1到8,列下标j从1到10,从首地址SA 开始连续存放在存储器内,该数组按行存放时,元素A[8][5]的起始地址为( ) 。

数据结构课后题答案(第4章).

数据结构课后题答案(第4章).

数据结构部分课后习题答案第四章4.1广度优先生成树(黑体加粗边:深度拓扑排序序列:v0-v2-v3-v1-v4 4.2广度深度(1(2加边顺序a-b b-e e-d d-f f-c4.3、如图所示为一个有6个顶点{u1,u2,u3,u4,u5,u6}的带权有向图的邻接矩阵。

根据此邻接矩阵画出相应的带权有向图,利用dijkstra 算法求第一个顶点u1到其余各顶点的最短路径,并给出计算过程。

带权有向图:4.4证明在图中边权为负时Dijkstra算法不能正确运行若允许边上带有负权值,有可能出现当与S(已求得最短路径的顶点集,归入S内的结点的最短路径不再变更内某点(记为a以负边相连的点(记为b确定其最短路径时,它的最短路径长度加上这条负边的权值结果小于a原先确定的最短路径长度,而此时a在Dijkstra算法下是无法更新的。

4.5P.198 图中的权值有负值不会影响prim和kruskal的正确性如图:KRUSKAL求解过程:4.6 Dijkstra算法如何应用到无向图?答:Dijkstra算法通常是运用在带非负权值的有向图中,但是无向图其实就是两点之间两条有向边权值相同的特殊的有向图,这样就能将Dijkstra算法运用到无向图中。

4.7用FLOYD算法求出任意两顶点的最短路径(如图A(6所示。

A(0= A(1= A(2=A(3= A(4=A(5= A(6= V1 到 V2、V3、V4、V5、V6 往返路径长度分别为 5,9,5,9,9,最长为 9,总的往返路程为 37 同理 V2 到 V1、V3、V4、V5、V6 分别为 5,8,4,4,13,最长为 13,总和 34 V3 对应分别为 9,8,12,8,9,最长为 12,总和为 46 V4 对应分别为 5,4,12,4,9,最长为 12,总和为 34 V5 对应分别为9,4,8,4,9,最长为 9,总和为 34 V6 对应分别为 9,13,9,9,9,最长为13,总和为 49 题目要求娱乐中心“距其它各结点的最长往返路程最短” ,结点V1, V5 最长往返路径最短都是 9。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第四章串一、选择题1.下面关于串的的叙述中,哪一个是不正确的()【北方交通大学2001 一、5(2分)】A.串是字符的有限序列B.空串是由空格构成的串C.模式匹配是串的一种重要运算D.串既可以采用顺序存储,也可以采用链式存储2 若串S1=‘ABCDEFG’, S2=‘9898’,S3=‘###’,S4=‘012345’,执行concat(replace(S1,substr(S1,length(S2),length(S3)),S3),substr(S4,index(S2,‘8’),length(S2)))其结果为()【北方交通大学1999 一、5 (25/7分)】A.ABC###G0123 B.ABCD###2345 C.ABC###G2345 D.ABC###2345E.ABC###G1234 F.ABCD###1234 G.ABC###01234~3.设有两个串p和q,其中q是p的子串,求q在p中首次出现的位置的算法称为()A.求子串B.联接C.匹配D.求串长【北京邮电大学2000 二、4(20/8分)】【西安电子科技大学1996 一、1 (2分)】4.已知串S=‘aaab’,其Next数组值为()。

【西安电子科技大学1996 一、7 (2分)】A.0123 B.1123 C.1231 D.12115.串‘ababaaababaa’的next数组为()。

【中山大学1999 一、7】A.0 B.012121111212 C.0 D.06.字符串‘ababaabab’的nextval 为()A.(0,1,0,1,04,1,0,1) B.(0,1,0,1,0,2,1,0,1)C.(0,1,0,1,0,0,0,1,1) D.(0,1,0,1,0,1,0,1,1 ),【北京邮电大学1999 一、1(2分)】7.模式串t=‘abcaabbcabcaabdab’,该模式串的next数组的值为(),nextval数组的值为()。

A.0 1 1 1 2 2 1 1 1 2 3 4 5 6 7 1 2 B.0 1 1 1 2 1 2 1 1 2 3 4 5 6 1 1 2C.0 1 1 1 0 0 1 3 1 0 1 1 0 0 7 0 1 D.0 1 1 1 2 2 3 1 1 2 3 4 5 6 7 1 2E.0 1 1 0 0 1 1 1 0 1 1 0 0 1 7 0 1 F.0 1 1 0 2 1 3 1 0 1 1 0 2 1 7 0 1【北京邮电大学1998 二、3 (2分)】8.若串S=’software’,其子串的数目是()。

【西安电子科技大学2001应用一、2(2分)】A.8 B.37 C.36 D.99.设S为一个长度为n的字符串,其中的字符各不相同,则S中的互异的非平凡子串(非空且不同于S 本身)的个数为()。

【中科院计算所1997 】A.2n-1 B.n2 C.(n2/2)+(n/2) D.(n2/2)+(n/2)-1 E. (n2/2)-(n/2)-1 F.其他情况、10.串的长度是指()【北京工商大学2001 一、6 (3分)】A.串中所含不同字母的个数B.串中所含字符的个数C.串中所含不同字符的个数D.串中所含非空格字符的个数二、判断题1.KMP算法的特点是在模式匹配时指示主串的指针不会变小。

()【北京邮电大学2002 一、4 (1分)】2.设模式串的长度为m,目标串的长度为n,当n≈m且处理只匹配一次的模式时,朴素的匹配(即子串定位函数)算法所花的时间代价可能会更为节省。

()【长沙铁道学院1998 一、1 (1分)】3.串是一种数据对象和操作都特殊的线性表。

()【大连海事大学2001 1、L (1分)】二、填空题)1.空格串是指__(1)__,其长度等于___(2)__。

【西安电子科技大学2001软件一、4(2分)】2.组成串的数据元素只能是________。

【中山大学1998 一、5 (1分)】3.一个字符串中________称为该串的子串。

【华中理工大学2000 一、3(1分)】4.INDEX(‘DATASTRUCTURE’,‘STR’)=________。

【福州大学1998 二、4 (2分)】5.设正文串长度为n,模式串长度为m,则串匹配的KMP算法的时间复杂度为________。

【重庆大学2000 一、4】6.模式串P=‘abaabcac’的next函数值序列为________。

【西安电子科技大学2001软件一、6(2分)】7.字符串’ababaaab’的nextval函数值为________。

【北京邮电大学2001 二、4 (2分)】8.设T和P是两个给定的串,在T中寻找等于P的子串的过程称为__(1)__,又称P为__(2)__。

【西安电子科技大学1998 二、5 (16/6分)】¥9.串是一种特殊的线性表,其特殊性表现在__(1)__;串的两种最基本的存储方式是__(2)__、__(3)__;两个串相等的充分必要条件是__(4)__。

【中国矿业大学2000 一、3 (4分)】10.两个字符串相等的充分必要条件是_______。

【西安电子科技大学1999软件一、1 (2分)】11.知U=‘xyxyxyxxyxy’;t=‘xxy’;ASSIGN(S,U);ASSIGN(V,SUBSTR(S,INDEX(s,t),LEN(t)+1));ASSIGN(m,‘ww’)求REPLACE(S,V,m)= ________。

【东北大学1997 一、1 (5分)】12.实现字符串拷贝的函数strcpy为:void strcpy(char *s , char *t) /*copy t to s*/{ while (________)、} 【浙江大学1999 一、5 (3分)】13.下列程序判断字符串s 是否对称,对称则返回1,否则返回0;如f("abba")返回1,f("abab")返回0;int f((1)________){int i=0,j=0;while (s[j])(2)________;for(j--; i<j && s[i]==s[j]; i++,j--);return((3)_______)} 【浙江大学1999 一、6 (3分)】14.下列算法实现求采用顺序结构存储的串s和串t的一个最长公共子串。

程序(a)·PROCEDURE maxcomstr(VAR s,t : orderstring; VAR index,length : integer);VAR i,j,k,length1:integer; con:boolean;BEGINindex :=0; length :=0; i :=1;WHILE(i<= DO[j:=1;WHILE (j<= DO[ IF (s[i]=t[j]) THEN[ k:=1; length1:=1; con:=true;WHILE con DO;IF (1)__THEN [length1:=length1+1;k:=k+1;] ELSE(2) _;IF (length1>length) THEN [index:=i; length:=length1; ](3)____;]ELSE (4)____;](5) ___;]END;程序(b){void maxcomstr(orderstring *s,*t; int index, length){int i,j,k,length1,con;index=0;length=0;i=1;while (i<={j=1;while(j<={ if (s[i]= =t[j]){ k=1;length1=1;con=1;while(con)if (1) _ { length1=length1+1;k=k+1; } else (2) __;…if (length1>length) { index=i; length=length1; }(3)____;}else (4) ___;}(5) __} } 【上海大学2000 一、2 (10分)】15.完善算法:求KMP算法中next数组。

PROC get _next(t:string,VAR next:ARRAY[1..] OF integer);BEGIN^j:=1; k:=(1)__; next[1]:=0;WHILE j< DOIF k=0 OR [j]=[k] THEN BEGIN j:=j+1; k:=k+1; next[j]:=k;ENDELSE k:=(2)___;END;【中山大学1998 四、1 (4分)】16.下面函数index用于求t是否为s的子串,若是返回t第一次出现在s中的序号(从1开始计),否则返回0。

例如:s=‘abcdefcdek’,t=‘cde’,则indse(s,t)=3, index(s,’aaa’)=0 。

已知t,s的串长分别是mt,ms FUNC index(s,t,ms,mt);i:=1;j:=1;(WHILE (i<ms) AND (j<mt) DOIF s[i]=t[j] THEN [ (1)__; (2)__]ELSE [ (3)___; (4)_ ]IF j>mt THEN return (5)____; ELSE return (6)__ENDF;【南京理工大学1999 三、2 (6分)】17.阅读下列程序说明和pascal程序,把应填入其中的()处的字句写在答题纸上。

程序说明:本程序用于判别输入的字符串是否为如下形式的字符串:W&M$ 其中,子字符串M是子字符串W的字符反向排列,在此假定W不含有字符&和字符$,字符&用作W与M的分隔符,字符$用作字符串的输入结束符。

)例如,对输入字符串ab&ba$、11&12$、ab&dd$、&$,程序将分别输出Ok.(是),No.(不是)。

程序PROGRAM accept(input,output);CONST midch=’&’; endch=’$’;VAR an:boolean; ch:char;PROCEDURE match(VAR answer: boolean);VAR ch1,ch2:char; f:boolean;BEGINread(ch1);IF ch1<>endch—THEN IF (1)__THEN BEGIN match(f);IF f THEN BEGIN read(ch2); answer:=(2)_ END ELSE answer:=falseENDELSE (3)___ELSE (4)___END;BEGINwriteln(‘Enter String:’);match(an);~IF an THEN BEGIN(5)__ IF (6)_ THEN writeln(‘Ok.’) ELSE writeln(‘No.’)ENDELSE writeln(‘No.’)END. 【上海海运学院1998 七(15分)】18.试利用下列栈和串的基本操作完成下述填空题。

相关文档
最新文档