数据结构

位置:IT落伍者 >> 数据结构 >> 浏览文章

数据结构考研分类复习真题 第四章 串[6]


发布日期:2020年07月06日
 
数据结构考研分类复习真题 第四章 串[6]

.阅读下列程序说明和pascal程序把应填入其中的( )处的字句写在答题纸上【上海海运学院 七 (分)】

程序说明

本程序用于判别输入的字符串是否为如下形式的字符串:

W&M$ 其中子字符串M是子字符串W的字符反向排列在此假定W不含有字符&和字符$字符&用作W与M的分隔符字符$用作字符串的输入结束符

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

程序

PROGRAM accept(inputoutput);

CONST midch=&; endch=$;

VAR an:boolean; ch:char;

PROCEDURE match(VAR answer: boolean);

VAR chch:char; f:boolean;

BEGIN

read(ch);

IF ch<>endch

THEN IF ()__

THEN BEGIN match(f);

IF f THEN BEGIN read(ch); answer:=()_ END ELSE answer:=false

END

ELSE ()___

ELSE ()___

END;

BEGIN

writeln(Enter String:);

match(an);

IF an THEN BEGIN

()__ IF ()_ THEN writeln(Ok) ELSE writeln(No)

END

ELSE writeln(No)

END

.试利用下列栈和串的基本操作完成下述填空题【清华大学 八】

initstack(s) 置s为空栈

push(sx) 元素x入栈;

pop(s) 出栈操作;

gettop(s) 返回栈顶元素

sempty(s) 判栈空函数

setnull(st) 置串st为空串

length(st) 返回串st的长度

equal(ss) 判串s和s是否相等的函数

concat(ss) 返回联接s和s之后的串

sub(si) 返回s中第i个字符

empty(st) 判串空函数

FUNC invert(pre:string; VAR exp:string):boolean;

{若给定的表达式的前缀式pre正确本过程求得和它相应的表达式exp并返回true否则exp为空串并返回false已知原表达式中不包含括弧opset为运算符的集合}

VAR s:stack; in:integer; succ:boolean; ch: char;

BEGIN

i:=; n:=length(pre); succ:=true;

()__; ()__;

WHILE (i<n) AND succ DO

BEGIN ch:=sub(preil);

IF ()_ THEN ()__

ELSE IF ()__THEN ()_

ELSE BEGIN

exp:=concat(()___()____);

exp:=concat(()___()___);

()__;

END;

i:=i+

END;

IF ()___THEN

BEGIN exp:=concat(expsub(pren)); invert:=true END

ELSE BEGIN setnull(exp); invert:=false END

END;

注意每个空格只填一个语句

[] [] [] [] [] [] [] [] [] [] [] []

               

上一篇:数据结构考研分类复习真题 第四章 串[7]

下一篇:数据结构考研分类复习真题 第四章 串[5]