回 帖 发 新 帖 刷新版面

主题:求输入逻辑表达式然后得出真值表的算法思路,程序很难写求帮助

要求:输入一个逻辑表达式(如A&B|C)然后得出真值表
A  B   C       A&B|C
0  0   0        0
0  0   1        1
0  1   0        0
0  1   1        0
1  0   0        0
1  0   1        1
1  1   0        1
1  1   1        1
很难写的程序希望大家给点思路,
不需要程序,只要把思路说一下就行了

另外,里面有一个运算符优先级的函数不知道怎么写
运算符有  +(双条件)、-(条件)、|、&、!、((左括号)、)(右括号)

  + - | & ! ( )
+ > < < < < < > 
- > > < < < < >
| > > > < < < >
& > > > > < < >
! > > > > > < >
( < < < < < < =
) > > > > > E >     E表示错误
这是运算符优先级的比较表  比法:先看竖列再在第一行找(例:+与&比较  +<&  即&优先级高)

我记得老师是用一个2维数组写的这个函数。

求那位大神来帮帮我

[em8]

回复列表 (共12个回复)

11 楼

上面程序只支持与、或、非三种基本运算,支持括号。至于+和-两个符号我没看明白是什么意思,楼主如果读懂了程序,可以自行修改,增加+和-两种运算。

12 楼


谢谢你啊,我自己慢慢研究吧,看懂了你的代码,就应该搞懂了[em1]

我来回复

您尚未登录,请登录后再回复。点此登录或注册