当前位置: 首页 > wzjs >正文

佛山小网站建设抖音排名优化

佛山小网站建设,抖音排名优化,域名如何备案,wordpress账号注册页面栈的应用【实验题】 使用栈实现后缀表达式计算,其中,在后缀表达式中,输入的数字为整数,且为正数,数字、符号之间用空格隔开,整个后缀表达式用“#”表示结束。其中,整个后缀表达式长度不超过200…

栈的应用【实验题】

使用栈实现后缀表达式计算,其中,在后缀表达式中,输入的数字为整数,且为正数,数字、符号之间用空格隔开,整个后缀表达式用“#”表示结束。其中,整个后缀表达式长度不超过200,每个数字位数不超过10。

提示:读取数据的过程中,可以利用栈处理每个数字。

输入样例:

11 2 3 + * #(注:对应的中缀表达式是11*(2+3))

6 2 3 + * 5 / 7 - #(注:对应的中缀表达式是6*(2+3)/5-7)

输出样例:

55

-1

#include<iostream>
#include<string>
using namespace std;
struct stack
{int a[300];int index = -1;void instack(int x)  //入栈操作{a[++index] = x;}void calculate(char k)  //k是运算符{int sum = 0;int k1, k2;k1 = showtop(); outstack();k2 = showtop(); outstack();if (k == '+'){sum = k1 + k2;}else if (k == '-'){sum = k2 - k1;}else if (k == '*'){sum = k1 * k2;}else if (k == '/'){sum = k2 / k1;}instack(sum);}void outstack() //出栈{index--;}int showtop()  //显示栈顶字符{return a[index];}
};
int main()
{stack f;string b;while (cin >> b && b != "#"){if (b == "+" || b == "-" || b == "*" || b == "/"){f.calculate(b[0]);}else{int num = stoi(b);f.instack(num);}}cout << f.showtop() << endl;return 0;
}

整体还是很简单的,主要操作步骤如下

1.写一个栈的结构,这里面设置栈结构(a[]数组),index索引指向目前栈顶,并包含入栈、出栈、显示栈顶字符操作

2.输入字符

3.写运算calculate函数

要注意的问题是cin可以隔断输入的string b,此时比如单个输入的"11"就是要给字符串b

string b;while (cin >> b && b != "#"){if (b == "+" || b == "-" || b == "*" || b == "/"){f.calculate(b[0]);}else{int num = stoi(b);f.instack(num);}}

同时calculate()也可以用switch写,更简洁一些

 void calculate(char k) {int right = a[index--]; // 右操作数(栈顶)int left = a[index--];  // 左操作数(次栈顶)int sum = 0;switch(k) {case '+': sum = left + right; break;case '-': sum = left - right; break;case '*': sum = left * right; break;case '/': sum = left / right; break; // 修正为 left / right}a[++index] = sum; // 结果入栈}

http://www.dtcms.com/wzjs/16936.html

相关文章:

  • 真人做爰网站东莞网站建设平台
  • 构建企业门户网站的方法国内好用的搜索引擎
  • 周口网站制作公司哪家好优化大师破解版app
  • 衡南网站建设制作自己的网页
  • 临沂专业做网站公司嘉兴seo报价
  • 江苏建站服务南宁百度seo
  • 网站制作 火星科技网络营销中的四种方法
  • 哪个网站是做包装材料珍珠棉包管seo技术优化服务
  • 台湾网站建设公司重庆seo排名外包
  • 大连企业网站建设公司员工培训方案
  • 甘肃省住房与城乡建设部网站免费的郑州网络推广服务
  • 网站安装百度商桥在线网络培训平台
  • 河北中凯建设有限公司网站南京百度推广优化排名
  • 站点提交百度手机助手下载2021新版
  • 推广图片设计如何简洁好看seo推广方法有哪些
  • 微网站首页模板北京seo优化排名
  • 网站搭建h5是什么深圳正规seo
  • 网站建设 服务流程如何制定会员营销方案
  • 网站建设要钱吗最近时事热点
  • 淘宝客如何做网站专业做网站的公司
  • php怎么网站开发软文优化
  • 住房和城乡建设部网站投诉电话百度免费下载安装百度
  • 宝鸡市住房和城乡建设局官方网站网站加速
  • 推荐一本学做网站的书厦门人才网官网
  • 购物网站运作免费顶级域名申请网站
  • wordpress调用第一张图片不显示seo单页快速排名
  • 淘宝客建网站怎么做长沙网站制作公司哪家好
  • 做门户网站有前途吗百度搜索指数的数据来源
  • 经营性网站备案要求苏州网站seo服务
  • 做网站一般几个人谷歌推广方案