对于随机生成的部分,主要是利用rand和srand函数,生成数字,符号和括号的类型。数字生成很简单,括号的生成要考虑不同的情况,符号的生成也是比较复杂的,因为要考虑数学意义等实际问题。当这些问题都解决了,结果又出现了更棘手的问题:怎么计算这些算式的值呢?一开始我们的想法就是很简单的用switch 和 if 语句来实现也尝试过其中一种括号的情况,然而比我们想象的要复杂许多,意味这样我们总共要书写644*4总情况,这样下来是根本行不通的。后来经过一些查找,在网站上找到一些关于表达式计算的方法,也就是利用栈,设置一个数据栈和运算符栈来进行答案的计算。通过对运算符优先级的判断,然进行两数之间主意计算,最终得到相关结果。具体内容在代码中体现。最后就是中英文界面的优化,等等这些方面就相对比较简单了,利用按照输入的不同实现中文与英文的输出。