首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
从键盘上输入一个逆波兰表达式,用伪码写出其求值程序。规定:逆波兰表达式的长度不超过一行,以$符作为输入结束,操作数之间用空格分隔,操作符只可能有+、一、*、/四种运算,例如:234—34+2*$。
从键盘上输入一个逆波兰表达式,用伪码写出其求值程序。规定:逆波兰表达式的长度不超过一行,以$符作为输入结束,操作数之间用空格分隔,操作符只可能有+、一、*、/四种运算,例如:234—34+2*$。
admin
2017-11-14
39
问题
从键盘上输入一个逆波兰表达式,用伪码写出其求值程序。规定:逆波兰表达式的长度不超过一行,以$符作为输入结束,操作数之间用空格分隔,操作符只可能有+、一、*、/四种运算,例如:234—34+2*$。
选项
答案
逆波兰表达式(即后缀表达式)求值规则如下:设立运算数栈OPND,对表达式从左到右扫描(读入),当表达式中扫描到数时,压入OPND栈。当扫描到运算符时,从OPND退出两个数,进行相应运算,结果再压入OPND栈。这个过程一直进行到读出表达式结束符$,这时OPND栈中只有一个数,就是结果。 float expr(){ //从键盘输入逆波兰表达式,以’$’表示输入结束,本算法求逆波兰表达式的值 float OPND[30]; //OPND是操作数栈 init(OPND); //两栈初始化 float num=O.0; //数字初始化 scanf(”%C”,&x); //x是字符型变量 while(X!=’$’){ switch(X){ case’0’: case’1’. case ’2’ case’3’: case’4’: case’5’: case’6’: case’7’: case’8’: case’9’: while((x>=’0’&&x<=’9’)|| x==.’)//拼数 if(x!=‘.’){num=num*10+(ord(x)一ord(’0’));scanf(”%C”,&x);}//处理整数 else{ //处理小数部分 scale=10.0;scanf(”%C”,&x); while(x>=’0’&&x<=’9’){ num=num+(ord(x)-ord(’0’))/scale; scale=scale*10;scanf(”%c”,&x): } }//else push(OPND,hum);hum=0.0; //数压入栈,下个数初始化 case”:break; //遇空格,继续读下一个字符 case’+’:push(OPND,pop(OPND)+pop(OPND));break; case’-’:x1=pop(OPND);x2=pop(OPND);push(OPND,x2-x1);break; case’*’:push(OPND,pop(OPND)*pop(OPND));break; case’/’:x1=pop(OPND);x2=pop(OPND);push(OPND,x2/x1);break; default: //其他符号不作处理 }//结束switch scanf(”%c”,&x): //读入表达式中下一个字符 }//结束while(x!=’$’) printf(”后缀表达式的值为%f”);pop(OPND); }
解析
转载请注明原文地址:https://jikaoti.com/ti/uafjFFFM
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
魏晋南北朝的手工业技术有所进步,下列各项能反映这一特点的是()。①培育出“三熟之稻”②“灌钢”技术的发明③吴培育出八辈之蚕④纸成为最主要的书写材料
美国工业革命的有利条件包括()。①美国自然资源丰富②独立战争后,美国创立了资产阶级共和制度③地理位置优越,远离动乱的欧洲④拥有潜在的广阔的国内市场
阅读以下史料,并回答问题:心即理也,此心无私欲之蔽,即是天理,不须外面添一分。——《传习录》上朱子所谓格物云者,在即物而穷其理也。即物穷理,是就事事物物上求其所谓定理也。是以吾心而求理于事
第一次国共合作采取了共产党员以个人身份加入国民党的“党内合作”方式。最早提出这种方式的是()。
屋大维的权力达到顶峰是在获得了哪一称号之后?()
在4×100米接力赛中,4个运动员之间存在如下关系:运动员1跑到终点把接力棒交给运动员2;运动员2一开始处于等待状态,在接到运动员1传来的接力棒后才能往前跑,他跑完100米后交棒给运动员3;运动员3也只有接到运动员2传来的接力棒后才能往前跑,他跑完100米
给定序列{3,5,7,9,11,13,15,17),(1)按表中元素的顺序依次插入一棵初始为空的二叉排序树,画出插入完成后的二叉排序树,并求在等概率情况下查找成功的平均查找长度。(2)按表中元素的顺序构造一棵平衡二叉树,并求其在等概率情
将两个长度为N的有序表归并到一个长度为2N的有序表,最少需要比较的次数是(),最多需要比较的次数是()。
请利用队列的基本操作写出判定一棵二叉树是否为完全二叉树的算法。要求以二叉链表作为二叉树的存储结构。函数原型为:intIsFull_Bitree(BitreeT)。
下列属于实时控制系统的是()。
随机试题
社会主义初级阶段主要矛盾决定的中心任务是()
患者男,59岁。吸烟30年,每日20支,每遇秋冬咳嗽15年,到呼吸科门诊咨询是否有COPD。早期慢性支气管炎肺部X线表现是
某公司总经理林女士,今因待行右侧乳腺切除术而收入院。从促进舒适角度,护士首要措施应针对
操作风险评估的准备阶段不包括()
企业如果延长信用期间,可能导致的结果有()。(2009年)
幼儿园膳食管理制度应包括以下内容()。[辽宁省2007年11月四级真题]
小腿腓肠肌是人体最容易发生肌肉痉挛的部位,当小腿腓肠肌发生肌肉痉挛时,常采用的措施为()。
AccordingtoDr.NoraVolkow,theuse,ofdrugsWecaninferfromthepassagethatwemaycureaddictionby
对于单链表,如果仅仅知道一个指向链表中某结点的指针p,(54)将p所指结点的数据元素与其确实存在的直接前驱交换,对于单循环链表来说(55),而对双向链表来说(56)。
A、TalkwithMaryaboutgoingtotheconcert.B、AskMarytostopworryingabouttheexam.C、HelpMarytopreparefortheupcoming
最新回复
(
0
)