求助 编写简单的计算器程序

来源:百度知道 编辑:UC知道 时间:2024/05/28 10:17:16
利用栈设计一个简单的一位数计算器,并用此进行简单表达式的求值。
操作数允许是任意一位整数0~9。
运算符允许是+、-、*、/;并以输入分号’;’作为表达式的结束标志。运算符要考虑优先级。
表达式通过键盘一次输入。对非法字符的输入,应有错误信息提示,并等待重新输入。
允许带左右括号的表达式计算,如:(2+3)*5-(7-4)
对选择的数据存储方式说明选择的理由。

1年半前编的了,输入(2+3)*5-(7-4) 直接按回车,不用;结尾

运行结果:
输入算式:
(2+3)*5-(7-4)
(2+3)*5-(7-4)=22

#include<math.h>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define true 1
#define false 0
#define OPSETSIZE 8
typedef int Status;
unsigned char Prior[8][8] = { // 表3.1 算符间的优先关系
// '+' '-' '*' '/' '(' ')' '#' '^'
/*'+'*/'>','>','<','<','<','>','>','<',
/*'-'*/'>','>','<','<','<','>','>','<',
/*'*'*/'>','>','>','>','<','>','>','<',
/*'/'*/'>','>','>','>','<