This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
Briefly, you need a parser which parses expressions into a tree structure, then evaluates/simplifies the tree, and then prints (or otherwise reports) the tree. The details are covered in any introductory book on compiler or parser writing, or the help docs for many "compiler-compilers" like ANTLR.