博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
逆波兰表达式
阅读量:5894 次
发布时间:2019-06-19

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

* 8 5 == 8 * 5

+ 9 9 == 9 + 9

逆波兰表达式的定义

1.一个数是逆波兰表达式,值为该数。

2.”运算符 逆波兰表达式 逆波兰表达式“ 是逆波兰表示式 值是两个逆波兰表达式运算的结果。

逆波兰表示式是一种把运算符放在前面的表达式

要求你用编写一个程序来计算逆波兰表达式

显然 逆波兰表示式的定义就是使用递归定义的,所以我们用递归实现逆波兰表达式的计算。

1 #include 
2 #include
3 #include
4 using namespace std; 5 6 double exp() 7 { 8 char s[20];//读入一个数 用字符数组储存 9 cin >> s;10 switch(s[0])11 {12 case '+': return exp() + exp(); 13 case '-': return exp() - exp();14 case '*': return exp() * exp();15 case '/': return exp() / exp();16 default: return atof(s);//将字符数组转变为double型数据并返回double数据17 break;18 }19 }20 21 int main()22 {23 printf("%f\n",exp());24 return 0;25 }

 atof 是C++的一个库函数 功能是把一个字符数组中储存的浮点数转化为double型。

转载于:https://www.cnblogs.com/16-CHQ/p/6663602.html

你可能感兴趣的文章
从TimSort说起
查看>>
构建 iOS 界面:子类化 Views
查看>>
笨办法学C 练习1:启用编译器
查看>>
用Golang写一个搜索引擎(0x01)--- 基本概念
查看>>
【算法之美】logn 时间复杂度求解两个有序数组的中位数
查看>>
树的总结--树的性质(树的深度) leetcode
查看>>
docker环境搭建ELK
查看>>
webpack sourcemap 选项多种模式的一些解释
查看>>
document.createElement()的用法
查看>>
MySQL 数据库怎样把一个表的数据插入到另一个表
查看>>
HTTP协议及其POST与GET操作差异 & C#中如何使用POST、GET等
查看>>
nginx正则笔记
查看>>
delphi实现数字的倒计时
查看>>
在 IIS 下添加 FLV 类型文件的支持
查看>>
java线程学习3——线程的停止
查看>>
穿过任意防火墙NAT的远程控制软件TeamViewer
查看>>
PIX防火墙基本特性:失效处理机制和冗余-原理与实验
查看>>
域环境内部署Bginfo来统计用户计算机信息
查看>>
nagios短信报警(飞信fetion20080522004-linrh4)
查看>>
【Android游戏开发之六】在SurfaceView中添加组件!!!!并且相互交互数据!!!!...
查看>>