网友您好, 请在下方输入框内输入要搜索的题目:
题目内容
(请给出正确答案)
假定栈用顺序的方式存储,栈类型stack定义如下:
TYPE stack=RECORD
A: ARRAY[1..M0OF datatype;
t:0..M0;
END;
下面是栈的一种基本运算的实现:
PROCEDURE xxxx(VAR s:stack)
BEGIN
IF s.t=0
THEN print('underflow')
ELSE s.t:=s.t-1;
END;
请问这是栈的哪种基本运算?( )。
A) 栈的推入
B) 栈的弹出
C) 读栈顶元素
D) 将栈置为空栈
A.
B.
C.
D.
参考答案
更多 “ 假定栈用顺序的方式存储,栈类型stack定义如下:TYPE stack=RECORDA: ARRAY[1..M0OF datatype;t:0..M0;END;下面是栈的一种基本运算的实现:PROCEDURE xxxx(VAR s:stack)BEGINIF s.t=0THEN print('underflow')ELSE s.t:=s.t-1;END;请问这是栈的哪种基本运算?( )。A) 栈的推入B) 栈的弹出C) 读栈顶元素D) 将栈置为空栈A.B.C.D. ” 相关考题
考题
阅读下列说明和C代码,将应填入(n)处的字句写在对应栏内。【说明】栈(Stack)结构是计算机语言实现中的一种重要数据结构。对于任意栈,进行插入和删除操作的一端称为栈顶(Stock Top),而另一端称为栈底(Stock Bottom)。栈的基本操作包括:创建栈(NewStack)、判断栈是否为空(IsEmpty)、判断栈是否已满(IsFull)、获取栈顶数据(Top)、压栈/入栈(Push)、弹栈/出栈(Pop)。当设计栈的存储结构时,可以采取多种方式。其中,采用链式存储结构实现的栈中各数据项不必连续存储(如下图所示)。以下C代码采用链式存储结构实现一个整数栈操作。【C代码】typedef struct List {int data; //栈数据struct List* next; //上次入栈的数据地址}List;typedef struct Stack{List* pTop; //当前栈顶指针}Stack;Stack* NewStack() {return (Stack*) calloc(1/sizeof(Stack));}int IsEmpty(Stack* S){//判断栈S是否为空栈if((1))return 1;return 0;}int Top(Stack* s){//获取栈顶数据。若栈为空,则返回机器可表示的最小整数if(IsEmpty(S))return INT_ MIN;return (2);}void Push(Stack* S,int theData) {//将数据theData压栈List* newNode;newNode=(List*)calloc(1/sizeof (List));newNode->data=theData;newNode->next=S->pTop;S->pTop=(3);}void Pop(Stack* S) {//弹栈List* lastTop;if(IsEmpty(S) ) return;lastTop=S->pTop;S->pTop=(4);free(lastTop);}define MD(a) a<<2int main(){int i;Stack* myStack;myStack= NewStack();Push(myStack,MD(1));Push(myStack,MD(2));Pop(myStack);Push(myStack,MD(3)+1);while( !IsEmpty(myStack) ){printf("%d",Top(myStack));Pop(myStack);}return 0;}以上程序运行时的输出结果为:(5)
考题
(12)假定栈用顺序的方式存储,栈类型 stack定义如下:TYPE stack=RECORDA:ARRAY[l..m0] OF datatype;t:O..m0;END;下面是栈的一种基本运算的实现:PROCEDURE xxxx(VAR s:satack);BEGINIF s.t=0THEN print(‘underflow’)ELSE s.t:=s.t-1;END;请问这是栈的哪一种基本运算?A) 栈的推入B)栈的弹出C)读栈顶元素D)将栈置为空栈
考题
已知一个双端栈的地址为dS,则该双端栈不满时,,元素x进1号栈(高端栈)操作的语句是()A.dS->stack[--dS->top[1]]=x;B.dS->stack[dS->top[1]]=x;dS->top[1]--;C.dS->top[1]--; dS->stack[dS->top[1]]=x;D.dS->stack[++dS->top[1]]=x;
考题
1、已知一个双端栈的地址为dS,则该双端栈不满时,,元素x进1号栈(高端栈)操作的语句是()A.dS->stack[--dS->top[1]]=x;B.dS->stack[dS->top[1]]=x;dS->top[1]--;C.dS->top[1]--; dS->stack[dS->top[1]]=x;D.dS->stack[++dS->top[1]]=x;
考题
4、当利用大小为n的数组顺序存储一个栈时,假定用top==0表示栈空,则向这个栈插入一个元素时,操作为()。A.top=top+1; stack[top]=x;B.stack[top]=x; top=top+1;C.top=top-1; stack[top]=x;D.stack[top]=x; top=top-1;
考题
栈stack[0..m-1]中,用top指向栈顶元素,栈底在stack[0]处。判断栈满的条件是()A.top = =-1B.top = =mC.top = =0D.top = =m-1
考题
开始往输入串末尾和分析栈stack中放“#”,然后把文法开始符号压栈。预测分析程序总是按_________和________。A.stack栈顶符号X 最后的输入符号bB.stack栈顶符号X 当前输入符号aC.stack栈尾符号X 当前输入符号aD.stack栈尾符号X 最后的输入符号b
热门标签
最新试卷