四川大学《数据结构与算法分析》课程设计报告-带括号的算术表达式

loading 分享 2026-8-21 下载文档

[键入文字] [键入文字] [键入文字]

{

int j=i-1;

if(isdigit(str[j])) {

exp+=\;

if(ope.empty()||ope.top()=='('||ope.top()=='+'||ope.top(

)=='-')

{

ope.push(str[i]);

} else {

while(!ope.empty()&&ope.top()!='('&&ope.top()!='+'&&ope.top()!='-')

{

exp+=ope.top(); ope.pop();

}

-7-

[键入文字] [键入文字] [键入文字]

ope.push(str[i]);

} } else {

if(ope.empty()||ope.top()=='('||ope.top()=='+'||ope.top(

)=='-')

{ } else {

ope.push(str[i]);

while(!ope.empty()&&ope.top()!='('&&ope.top()!='+'&&ope.

top()!='-')

{ }

exp+=ope.top(); ope.pop();

-8-

[键入文字] [键入文字] [键入文字]

ope.push(str[i]);

} }

}

//}

else if(str[i]=='^') { int j=i-1; if(str[j]!=')') { exp+=\;

}

ope.push(str[i]);

}

else if(str[i]=='(') { ope.push(str[i]); }

else if(str[i]==')')

-9-

[键入文字] [键入文字] [键入文字]

}

{ } else { }

return \有错误\; exp+=\;

while(ope.top()!='(') { }

ope.pop();

exp+=ope.top(); ope.pop();

while(!ope.empty())//遍历完表达式将堆栈中的所有运算符输

{

if(isdigit(exp[exp.length()-1])) {

exp=exp+\+ope.top();

-10-


四川大学《数据结构与算法分析》课程设计报告-带括号的算术表达式.doc 将本文的Word文档下载到电脑
搜索更多关于: 四川大学《数据结构与算法分析》课程设计报告-带括号的算术表达 的文档
相关推荐
相关阅读