本文共 1424 字,大约阅读时间需要 4 分钟。
这个题刚刚做过。是一个c++的实验课,所以我直接用别人的代码了 当然,博客上的代码是我自己的。
#include#include #include using namespace std;char priority[7][7]={ { '<','<','<','<','>','>','>'}, { '<','<','<','<','>','>','>'}, { '>','>','<','<','>','>','>'}, { '>','>','<','<','>','>','>'}, { '>','>','>','>','>','=','>'}, { '<','<','<','<','=','0','>'}, { '<','<','<','<','>','<','='}};int detect(char temp){ char oper[7]={ '+','-','*','/','(',')','#'}; for(int i=0;i<7;i++) { if(temp==oper[i]) { return i; } } return 0;}char comp(char op1,char op2){ int row=detect(op1); int col=detect(op2); return priority[row][col];}int caclu(int n1,int n2,char op){ switch( op) { case '+': return n1+n2; break; case '-': return n1-n2; break; case '*': return n1*n2; break; case '/': if(n2==0) { cout<<"error // n2 is zero"<
转载地址:http://abuvb.baihongyu.com/