中缀表达式转化成后缀表达式的计算(12)
时间:2025-04-30
时间:2025-04-30
中缀表达式的直接计算,中缀表达式转化成后缀表达式的计算
} } tds->size--; return tds->tdNode[--(tds->top)]; exit(-1);
//看数栈栈顶
TdNode Td_getTop(TdStack *tds)
{
} int len = tds->size; return tds->tdNode[len - 1];
//创建一个返回值为double函数,用于两个数的计算,传入三个变量,
//第一个变量为 操作数1,第二个变量为操作数2,第三个变量为操作符
double Cal(double num_1,double num_2,char op)
{
} double num = 0; // 定义一个变量用于接收计算的结果 switch(op) { } return num; case '+':num = num_1 + num_2;break; case '-':num = num_1 - num_2;break; case '*':num = num_1 * num_2;break; case '/':if(num_2 == 0) // 如果除数为零,则推出程序并打印错误信息 { } num = num_1 / num_2; printf("divisor zero can't"); exit(-1); else
//创建一个返回值为int型的函数,用于比较两个操作符的优先级
int Compare_opeate(int level_1,int level_2)
{
} if(level_1 >= level_2)//判断优先级别,返回相应的值 return 0; return -1;
//创建一个返回值为double型的函数,用于返回整个表达式的计算结果
double CalResult()
{
//char ch[] = "23+12-34";
下一篇:O型圈技术手册