判断两个运算符s1,s2的优先顺序

来源:互联网 发布:淘宝评价50字以上 编辑:程序博客网 时间:2024/09/21 09:02
char Precede(char s1,char s2){//判断两个运算符s1,s2的优先顺序,//若s1优先则返回>,若s2优先则返回<,若s1,s2相同则返回= char f; switch(s2) {  case '+':  case '-': if(s1==')'||s1=='#'||s1=='(')      f='<';     else      f='>';     break;  case '*':  case '/': if(s1=='*'||s1=='/'||s1==')')      f='>';     else       f='<';     break;  case '(': if(s1==')')     {      printf("ERROR 1 !");      exit(ERROR);     }     else      f='<';     break;  case ')': if(s1=='#')     {      printf("ERROR 2 !");      exit(ERROR);     }     else      {      if(s1=='(')       f='=';      else       f='>';     }     break;  case '#': if(s1=='(')     {      printf("ERROR 3 !");      exit(ERROR);     }     else      {      if(s1=='#')       f='=';      else       f='>';     }     break;  default : printf("ERROR 4 !");     exit(ERROR); } return f;}

原创粉丝点击