输入一个单字符的运算符(+ - * / % > & =),输出它的优先级。+- 优先级是 4, * ,/, % 优先级 3,> 和< 优先级6,&优先级8,=优先级14。
如果是其它符号,结果-1.
输入格式:
一个字符
输出格式:
一个整数
输入样例:
*
输出样例:
在这里给出相应的输出。例如:
3
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
思路:
- 根据 op 的值(ASCII 码)使用 switch- case 匹配输入的运算符;
- 输出对应的优先级,若未匹配则输出 -1 表示无效运算符;
代码:
#include <stdio.h>
int main()
{
char op;
scanf("%c", &op);
int priority = -1; // 初始化优先级为-1,表示无效运算符
// 根据运算符的 ASCii 码值进行匹配,输出对应优先级
switch((int)op)
{
case '+':
case '-':
priority = 4;
break;
case '*':
case '/':
case '%':
priority = 3;
break;
case '>':
case '<':
priority = 6;
break;
case '&':
priority = 8;
break;
case '=':
priority = 14;
break;
}
printf("%d", priority); // 输出优先级
return 0;
}