C语言,计算器中的括号怎么做?

Python020

C语言,计算器中的括号怎么做?,第1张

用堆栈实现。将含有多重括号的中缀表达式翻译成后缀表达式,然后进行计算。步骤是:

从左到右依次检查每个字符

1.如果该字符是数字,直接加入到输出队列中

2.如果该字符是左括号(,将其加入堆栈

3.如果该字符是右括号),开始出栈,将栈中元素依次加入到输出队列中,直到碰到左括号'('。左括号本身不加入队列。如果栈中没有左括号,返回匹配错误。

4.如果该字符是非括号运算符,将该字符的优先级和栈顶元素作比较。如果优先级高于栈顶元素则入栈,否则添加到输出队列中。

表达式全部检查完毕后,将栈中所有剩余元素加入到输出队列中。如果栈中含有括号,返回匹配错误。

最后得到的输出队列就是后缀表达式。

C语言运算符是说明特定操作的符号,它是构造C语言表达式的工具 。C语言的运算是非常丰富的,除了控制语句和输入输出以外的几乎所有的基本操作都作为运算符处理。常见的运算符有三大类:算术运算符、关系运算符与逻辑运算符,另外,还有一些用于完成特殊任务的运算符,比如位运算、赋值运算符等等。

算术运算符是指:+、—、*、/、%(求余)、++(自增)、--(自减)七种。

自增(++)和自减(--)都有前缀和后缀之分:

在位运算中,是以输入整形变量的二进制(32位)进行运算的,其中有原码、反码和补码。

位运算符:|、&、~、^、<<、>>六种

赋值运算符有:=、+=、-=、/=、*=、%=、&=、|=、^=、>>=、<<=十一种。

逻辑运算符:&&、||、!三种。

&&:并且,事件一&&事件二,两个事件都成立时,整个事件才成立;

||:或,事件一||事件二,两个事件有一个事件成立,整个事件就成立;

!:非,事件不成立,为真。

关系运算符:<、<=、>、>=、==、!=共六种。

关系运算符所得的结果是一个逻辑值,在计算机中逻辑值分别为0和1,若果这个事实的逻辑是真的,那么逻辑结果为1,反之则为0。

条件?语句1:语句2

功能分析:如果条件成立,就执行语句1,否则执行语句2。

还有一些其他的运算符,比如逗号运算符,括号运算符等等,都是相对简单的,自己看一下都是可以理解,并且能做的,因此在这里也不一一进行解释说明了。