《程序设计方法学》实验报告-算术表达式求值(4)

2019-01-19 17:47

{

if(In(c))//是符号则进栈 {

switch(Precede(e,c)) {

case'<': //栈顶元素优先级低 Push(OPTR,c); c=getchar(); break;

case'=': //脱括号并接受下一字符 Pop(OPTR,e); c=getchar(); break;

case'>': //退栈并将运算结果入栈 Pop(OPTR,e); Pop(OPND,b); Pop(OPND,a);

Push(OPND,Operate(a,e,b)); break; }//switch }

else if(c>='0'&&c<='9'||c=='.') { int i=0;

while(c>='0'&&c<='9'||c=='.') {

Data[i]=c; i++; c=getchar(); }

Data[i]='\\0';//数字没有存满,输入字符串结束符

d=atof(Data);//此处是把数组里的数字,实际上是按字符串;转换为double类型,然后把浮点型数字入栈

Push(OPND,d);//atof函数的形参是指针类型,故用数组名 }

else {

cout<<\输入错误!\ exit(-1); }

GetTop(OPTR,e); }//while

GetTop(OPND,e); return e;

}//EvaluateExpression

////////////////////////////////////////////////////////////////////////////

/*主函数main.cpp*/

int main() {

SElemType result;

cout<<\请输入表达式,以#号结束\ result=EvaluateExpression(); cout<<\结果为:\ return 0; }


《程序设计方法学》实验报告-算术表达式求值(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2017-2022年中国餐饮市场运行态势及投资前景趋势预测报告(目录

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: