以下运算实现在链队上的入队列,请在______处用适当的语句予以填充。 void EnQueue(QueptrTp*lq,D
以下运算实现在链队上的入队列,请在______处用适当的语句予以填充。
void EnQueue(QueptrTp*lq,DataType x)
{ LqueueTp*P;
p=(LqueueTp*)malloc(sizeof(LqueueTp));
______=x;
p—>next=NULL;
(1q—>rear)—>next=______;
______;
}
以下运算实现在链队上的入队列,请在______处用适当的语句予以填充。
void EnQueue(QueptrTp*lq,DataType x)
{ LqueueTp*P;
p=(LqueueTp*)malloc(sizeof(LqueueTp));
______=x;
p—>next=NULL;
(1q—>rear)—>next=______;
______;
}
以下运算实现在循环队上的入队列,请在______处用适当的语句予以填充。
int EnCycQueue(CycquetaeTp*sq,DataType x)
{ if((sq—>rear+1)%maxsize==______)
{error("队满");return(0);)
else{______;
______;
return(1);
}
}
以下运算实现在循环队上判队空,请在______处用适当的语句予以填充。
int EmptyCycQueue(CycqcleueTp sq)
{ if(______)retum(1);
else return(0);
}
以下运算实现在链栈上的初始化,请在______处用适当的语句予以填充。
void InitStack(LStackTp*ls){______;)
以下运算实现在链栈上的进栈,请在______处用适当的语句予以填充。
void Push(LStackTp*ls,DataType x)
{ LStackTp*p;p=malloc(sizeof(LStackTp));
______;
p—>next=ls;
______;
}
以下运算实现在链栈上的退栈,请在______处用适当的语句予以填充。
int Pop(LStackTp*is,DataType*x)
{ LStackTp*P;
if(1s!=NULL)
{ p=ls;
*x=______;
ls=ls—>next;
______;
return(1);
} else return(0);
}
以下运算实现在顺序栈上的退栈,请在______处用适当的语句予以填充。
int Pop(SqStackTp*sq,DataType*x)
{ if(sq—>top==0){error("下溢");return(0);)
else{*x=______;
______;
return(1);
}
}
A.进程队列实际上就是通过PCB队列指针将若干个进程控制块组成一张链表
B.操作系统的进程队列分为三类:运行队列、就绪队列和等待队列
C.队列管理的操作只有入列、出列两种
D.队列的入列,是将一个PCB链入队列的队尾、队首,或插在中间
以下为求单链表表长的运算,分析算法,请在______处填上正确的语句。
int length_lklist(lklist head) /*求表的长度。 */
{______;
j=0;
while(p—>next!=NULL)
{______;
j++;}
return(j);
} /*回传表长*/
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!