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

如何上传网站内容谷歌seo站内优化

如何上传网站内容,谷歌seo站内优化,简历模板免费下载网站,开公司一年需要多少费用中缀表达式 中缀表达式#xff08;中缀记法#xff09;是一个通用的算术或逻辑公式表示方法#xff0c;操作符是以中缀形式处于操作数的中间#xff08;例#xff1a;3 4#xff09;#xff0c;中缀表达式是人们常用的算术表示方法。 前缀或后缀记法不同的是#xf…中缀表达式 中缀表达式中缀记法是一个通用的算术或逻辑公式表示方法操作符是以中缀形式处于操作数的中间例3 4中缀表达式是人们常用的算术表示方法。 前缀或后缀记法不同的是中缀记法中括号是必需的。计算过程中必须用括号将操作符和对应的操作数括起来用于指示运算的次序。 后缀表达式 逆波兰表示法Reverse Polish notationRPN或逆波兰记法是一种是由波兰数学家扬·武卡谢维奇1920年引入的数学表达式方式在逆波兰记法中所有操作符置于操作数的后面因此也被称为后缀表示法。逆波兰记法不需要括号来标识操作符的优先级。 中缀表达式转后缀表达式 中缀转后缀思路 初始化两个栈运算符栈S1操作数栈S2从左向右扫描中缀表达式遇到操作数时将其压入到操作数栈S2遇到运算符时比较其与运算符栈S1栈顶运算符的优先级如果运算符栈S1为空或栈顶运算符为左括号“ ( ”或者优先级比栈顶运算符的优先级较高则直接将此运算符压入栈中否则将运算符栈S1中栈顶的运算符弹入并压到操作数栈S2中再次进行与运算符栈S1栈顶运算符的优先级比较遇到括号时如果遇到了左括号“ ( ”则直接压入运算符栈S1如果遇到右括号“ ) ”则依次弹出运算符栈S1栈顶的运算符并压入操作数栈S2直到遇到左括号 ( 为止此时将这一对括号丢弃重复步骤2至8直到表达式的最右边将运算符栈S1剩余的运算符依次弹出并压入操作数栈S2拼接操作数栈S2中的元素并输出结果即为中缀表达式所对应的后缀表达式 中缀转后缀图示 下图是以9-2*3(5-2)*2为例子的完整过程。 中缀转后缀流程图 中缀转后缀代码分析 主函数 先初始化一下需要转化为后缀记法的字符串然后给一个用来存储后缀表达式的数组假设中缀转后缀的函数为MidtoLast给这个函数传入中缀表达式的字符数组midstr以及存储后缀表达式的字符数组laststr int main() {char midstr[] 9-2*3(5-2)*2;//中缀表达式printf(中缀表达式为%s\n, midstr);char laststr[100];//后缀表达式MidtoLast(laststr, midstr);printf(后缀表达式为%s\n, laststr);return 0; } 遇到操作数 遍历整个中缀字符串数组遇到数字字符就直接进行存储这里我们利用isdigit函数来判断是否数字字符在下面相关总结的部分会为大家详细讲解函数的使用方式这里只先需要知道它的头文件是#include ctype.h for (int i 0; midstr[i] ! \0;)//i有的情况是不的 {if (isdigit(midstr[i]))//数字字符直接放到后缀表达式里{laststr[j] midstr[i];} } 遇到运算符 在遇到运算符的时候遇到第一个操作符就直接压入栈中根据优先级来判断是谁先出栈谁后出栈“*”“/”的优先级高于“”“-”的优先级 遇到括号 并且在遇到操作符不是“)”想要进栈并且栈顶是“(”就直接压入栈中 for (int i 0; midstr[i] ! \0;)//i有的情况是不的 {else if ( top 0 ||midstr[i] ( ||(midstr[i] * || midstr[i] /) (mystack[top - 1] || mystack[top - 1] -) || mystack[top - 1] ( midstr[i] ! )){mystack[top] midstr[i];} } 出栈 遇到“)”并且栈顶元素为“(”则直接抵消 for (int i 0; midstr[i] ! \0;)//i有的情况是不的 {else if (midstr[i] ) mystack[top - 1] ()//直接抵消{i;top--;} } 剩余运算符全部出栈 将栈中的剩余元素都全部依次出栈 else//直接出栈 {laststr[j] mystack[--top]; }while (top 0) {laststr[j] mystack[--top]; }laststr[j] \0;//变为字符串 中缀转后缀完整代码 #include stdio.h #include ctype.hvoid MidtoLast(char* laststr, const char* midstr) {int j 0;//后缀表达式char mystack[100];//模拟栈int top 0;//栈顶指针当前可以存放数据的下标for (int i 0; midstr[i] ! \0;)//i有的情况是不的{if (isdigit(midstr[i]))//数字字符直接放到后缀表达式里laststr[j] midstr[i];else if (top 0 ||midstr[i] ( ||(midstr[i] * || midstr[i] /) (mystack[top - 1] || mystack[top - 1] -) ||mystack[top - 1] ( midstr[i] ! ))mystack[top] midstr[i];else if (midstr[i] ) mystack[top - 1] ()//直接抵消{i;top--;}else//直接出栈laststr[j] mystack[--top];}while (top 0){laststr[j] mystack[--top];}laststr[j] \0;//变为字符串 }int main() {char midstr[] 9-2*3(5-2)*2;//中缀表达式printf(中缀表达式为%s\n, midstr);char laststr[100];//后缀表达式MidtoLast(laststr, midstr);printf(后缀表达式为%s\n, laststr);return 0; }相关知识点 isdigit函数 实例 #include stdio.h #include stdlib.h #include ctype.h int main() {char str[] 1776ad;int year;if (isdigit(str[0])){year atoi(str);printf(The year that followed %d was %d.\n, year, year 1);}return 0; }运行结果
http://www.dnsts.com.cn/news/174009.html

相关文章:

  • 网站建设效益分析wordpress博客主题制作
  • 商务网站模块设计时前台基础设施建设wordpress 设置文章模板
  • 婚纱网站html源码网站网页开发公司
  • 搞网站开发的程序员属于哪一类太平洋电脑网官方网站
  • 丰泽区住房和城乡建设局投诉网站天津住建网
  • 东莞网站快速排名优化网页界面设计是什么
  • 怎么做网站自动响应苏州专业做网站公司哪家好
  • 邳州网站制作杨浦网站建设 网站外包
  • muse cc 做网站秦皇岛网络科技有限公司
  • 上海建设工程造价网站茶叶外贸网站建设
  • 网站建设工资一月多少钱为什么要做网站
  • 找人代做网站注意事项开发者模式打开好还是关闭好
  • php做的一个网站西安百度竞价外包
  • 营销型的网站江苏建设人才网证书查询电子证书
  • 成都网站建设优点wordpress 模型开发
  • 个人网站可以做淘宝客前端旅游网站行程怎么做
  • 教育响应式网站建设大型网络规划与设计
  • 合肥网站建合肥网站建设找蓝领商务wordpress调用代码怎么用
  • 成都网站建设公司司网站关键词锚文本指向
  • 网站定制解决方案cmsapp模板网站
  • 辽宁智能建站系统价格手机网站 标题长度
  • 泰和县网站免费建站怎么做宣传网页
  • 简约淘宝网站模板免费下载福田区网络建设
  • 龙岗做网站公司icxun那里有制作网站公司
  • wordpress打开网站打不开电商购物平台软件开发
  • 宝安高端网站建设公司网站内链建设方法
  • 张家界建设网站的公司怎么建设一个自己的电商网站
  • 一站式推广平台怎么访问wordpress
  • 千牛商家版网站建设上海企业服务云电话
  • 天津响应式网站设计百度不更新网站