填空题

已知栈的基本操作函数:intInitStack(SqStack*S);//构造空栈intStackEmpty(SqStack*S);//判断栈空intPush(SqStack*S,ElemTypee);//入栈intPop(SqStack*S,ElemType*e);//出栈函数conversion实现十进制数转换为八进制数,请将函数补充完整。voidconversion(){InitStack(S);scanf(“%d”,&N);while(N){(1);N=N/8;}while((2)){Pop(S,&e);printf(“%d”,e);}}//conversion

正确答案

(1)Push(S,N%8) (2)!StackEmpty(S)

答案解析

相似试题
  • 已知Ackerman函数的定义如下: (1)写出递归算法; (2)写出非递归算法; (3)根据非递归算法,求akm(2,1)时栈的变化过程。

    简答题查看答案

  • 已知Q是一个非空队列,S是一个空栈。编写算法,仅用队列和栈的ADT函数和少量工作变量,将队列Q的所有元素逆置。栈的ADT函数有:voidmakeEmpty(SqStacks);置空栈voidpush(SqStacks,ElemTypee);元素e入栈ElemTypepop(SqStacks);出栈,返回栈顶元素intisEmpty(SqStacks);判断栈空队列的ADT函数有:voidenQueue(Queueq,ElemTypee);元素e入队ElemTypedeQueue(Queueq);出队,返回队头元素intisEmpty(Queueq);判断队空

    填空题查看答案

  • 试编写如下定义的递归函数的递归算法,并根据算法画出求g(5,2)时栈的变化过程。

    简答题查看答案

  • 已知一个栈的输入序列为1,2,3,...,n,则其输出序列的第2个元素为n的输出序列的种数是()。

    填空题查看答案

  • 若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,pn,若p1=n,则pi为()

    单选题查看答案

  • 若已知一个栈的进栈序列是1,2,3,,n,其输出序列为p1,p2,p3,„,pn,若p1=n,则pi为()。

    单选题查看答案

  • 栈的操作特点是后进()

    填空题查看答案

  • 栈的插入与删除操作在()进行。

    单选题查看答案

  • 栈的插入和删除操作在()。

    单选题查看答案