[键入文字] [键入文字] [键入文字]
}
ope.pop(); }
else }
return exp;
{
exp=exp+ope.top();
ope.pop(); }
int examine(string str)//检查输入的表达式是否有误 {
if((isdigit(str[str.length()-1])!=0||str[str.length()-1]
==')')&&(isdigit(str[0])!=0||str[0]=='+'||str[0]=='-'||str[0]=='('))
{ int i;
for(i=0;i -11- [键入文字] [键入文字] [键入文字] if(str[i]=='/'||str[i]=='%'||str[i]=='*'||str[i]=='^') { int a=i+1; if(str[a]=='/'||str[a]=='*'||str[a]=='%'||str[a]==')'||str[a]=='.') if(str[a]=='/'||str[a]=='*'||str[a]=='%'||str[a]==')'||s } else if(str[i]=='+'||str[i]=='-') { int a=i+1; { cout<<\表达式有错误\< return 1; break; } tr[a]=='.'||str[a]=='^') {cout<<\表达式有错误\< -12- [键入文字] [键入文字] [键入文字] } return 1; break;} else if(isdigit(str[i])!=0) { } else int a=i+1; if(str[a]=='(') { cout<<\表达式有错误\< if(isdigit(str[i])==0&&str[i]!='+'&&str[i]!='-'&&str[i]!='*'&&str[i]!='/'&&str[i]!='^'&&str[i]!='%'&&str[i]!='('&&str[i]!=')'&&str[i]!='.') { cout<<\表达式有错误\< -13- [键入文字] [键入文字] [键入文字] } } } break; else if(str[i]=='.') { int a=i+1; if(isdigit(str[a])==0) { cout<<\表达式有错误\< return 1; } while(i==str.length()-1) { } cout<<\表达式正确\< -14-
相关推荐: