当前位置:网站首页>后缀式的计算
后缀式的计算
2022-08-04 20:42:00 【柯基@】
- 后缀式为何物?
这种表示方式把运算符写在运算对象的后面,例如,把a+b写成ab+,所以也称为后缀式。 - 它有何优点?
这种表示法的优点是根据运算对象和算符的出现次序进行计算,不需要使用括号,也便于用械实现求值。
eg:原表达式:a*(b*(c+d/e)-f)
后缀式:abcde/+f-
【例】编写一个函数,求后缀式的数值,其中后缀式存于一个字符数组exp中,exp中最后一个字符为“\0”,作为结束符,并且假设后缀式中的数字都只有一位。本题中所出现的除法运算,皆为整除运算,如2/3结果为0、3/2结果为1。
int op(int a,char Op,int b){
//运算函数
if(Op=='+') return a+b;
if(Op=='-') return a-b;
if(Op=='*') return a*b;
if(Op=='/'){
if(b==0){
cout<<"ERROR"<<endl;
return 0;
}
else
return a/b;
}
}
int com(char exp[]){
int stack[maxSize]; // maxSize 为已经定义的常量
int top=-1;
int a,b,c;
int i=0;
while(exp[i]!='\0'){
if(exp[i]>='0' && exp[i]<='9')
stack[++top]=exp[i]-'0';
else{
b=stack[top--];
a=stack[top--];
c=op(a,exp[i],b);
stack[++top]=c;
}
i++;
}
return stack[top];
}
边栏推荐
- 简述@RequestParam与@RequestBody参数注解
- 阿里的arthas使用,入门报错:Unable to attach to 32-bit process running under WOW64
- 帝国CMS仿核弹头H5小游戏模板/92game帝国CMS内核仿游戏网整站源码
- C语言之实现扫雷小游戏
- 刷题-洛谷-P1200 你的飞碟在这儿Your Ride Is Here
- 刷题-洛谷-P1304 哥德巴赫猜想
- Oreo domain name authorization verification system v1.0.6 public open source version website source code
- 刷题-洛谷-P1179 数字统计
- c语言小项目(三子棋游戏实现)
- Interviewer: How is the expired key in Redis deleted?
猜你喜欢
随机推荐
Debug locally and start the local server in vs code
QT(42)-QT线程-线程调用槽函数
如何进行AI业务诊断,快速识别降本提效增长点?
Cryptography Series: PEM and PKCS7, PKCS8, PKCS12
QT(41)-多线程-QTThread-同步QSemaphore-互斥QMutex
Retrofit的使用及原理详解
vim clear last search highlighting
【AGC】构建服务1-云函数示例
用 Excel 爬取网络数据的四个小案例
遇到MapStruct后,再也不手写PO,DTO,VO对象之间的转换了
【学术相关】清华教授发文劝退读博:我见过太多博士生精神崩溃、心态失衡、身体垮掉、一事无成!...
多商户商城系统功能拆解22讲-平台端分销商品
【CAS:2306109-91-9 |胺-PEG4-脱硫生物素】价格
composition-api
ts集成和使用
win10终端中如何切换磁盘
MATLAB中readtimetable函数用法
知识分享|如何设计有效的帮助中心,不妨来看看以下几点
Unreal 本地化 国家化 多语言
vs Code runs a local web server








