当前位置:首页 > 2009年会计从业资格考试会计基础模拟试题
analyseStack[0] = -1; /*#(-1)入栈*/ analyseStack[1] = 100; /*初始符入栈*/ topAnalyse = 1; }
/*显示符号栈中内容*/ void ShowStack() {
int i;
for(i = 0; i <= topAnalyse; i++) {
if(100 <= analyseStack[i])
printf(\ else {
if(-1 != analyseStack[i])
printf(\ else
printf(\ } } }
/*栈顶出栈*/ void Pop() {
topAnalyse--; }
/*使用产生式入栈操作*/ void Push(int r) {
int i;
struct pRNode *pt; Pop();
pt = P[r].rHead;
if(-1 == pt->rCursor) /*为空产生式时*/ return;
topAnalyse += P[r].rLength;
for(i = 0; i < P[r].rLength; i++) {
/*不为空产生式时*/
analyseStack[topAnalyse - i] = pt->rCursor;/*逆序入栈*/ pt = pt->next;
}/*循环未完时pt为空,则说明rLength记录等出错*/ }
共分享92篇相关文档