博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据结构实验之栈三:后缀式求值
阅读量:6579 次
发布时间:2019-06-24

本文共 1021 字,大约阅读时间需要 3 分钟。

 

题目描述

对于一个基于二元运算符的后缀表示式(基本操作数都是一位正整数),求其代表的算术表达式的值。

输入

输入一个算术表达式的后缀式字符串,以‘#’作为结束标志。

输出

求该后缀式所对应的算术表达式的值,并输出之。

示例输入

59*684/-3*+#

示例输出

57

提示

基本操作数都是一位正整数!
View Code
1 #include
2 int main() 3 { 4 int top = 0 ; 5 int s, n[100] ; 6 char c ; 7 while(scanf("%c", &c), c!='#') 8 { 9 if(c>='0'&&c<='9')10 n[++top] = c - 48 ;11 else12 {13 switch(c)14 {15 case'+': s = (n[top-1])+(n[top]) ; break ;16 case'-': s = (n[top-1])-(n[top]) ; break ;17 case'*': s = (n[top-1])*(n[top]) ; break ;18 case'/': s = (n[top-1])/(n[top]) ; break ;19 }20 top-- ;21 n[top] = s ;22 }23 }24 printf("%d\n", n[top]) ;25 return 0 ;26 }
注意字符串是不能转换成整数的,单独一个数字字符可以转换为整数。 例如:字符‘0’可以转换成整数 48(十进制)       字符‘1’转换成 49       ....       字符‘9’转换成 57
i++先执行 i 在 + 1 ++i先 + 1 在执行 i

转载于:https://www.cnblogs.com/yelan/archive/2013/01/23/2873689.html

你可能感兴趣的文章
React Native 0.20官方入门教程
查看>>
JSON for Modern C++ 3.6.0 发布
查看>>
Tomcat9.0部署iot.war(环境mysql8.0,centos7.2)
查看>>
我的友情链接
查看>>
监听在微信中打开页面时的自带返回按钮事件
查看>>
第一个php页面
查看>>
世界各国EMC认证大全
查看>>
LVS DR模型详解
查看>>
最优化问题中黄金分割法的代码
查看>>
在JS中使用Ajax
查看>>
在Unbuntu 上安装Phalcon
查看>>
常用的加密算法--摘要认证和签名认证的实现
查看>>
webplayer 设置加载图标和屏蔽右键
查看>>
Jolt大奖获奖图书
查看>>
drools 将添加switch支持
查看>>
android中webview空间通过Img 标签显示sd卡中 的图片
查看>>
url 的正则表达式:path-to-regexp
查看>>
ubuntu 16.04 安装PhpMyAdmin
查看>>
安卓开启多个服务
查看>>
设置分录行按钮监听事件
查看>>