首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
从键盘上输入一个逆波兰表达式,用伪码写出其求值程序。规定:逆波兰表达式的长度不超过一行,以$符作为输入结束,操作数之间用空格分隔,操作符只可能有+、一、*、/四种运算,例如:234—34+2*$。
从键盘上输入一个逆波兰表达式,用伪码写出其求值程序。规定:逆波兰表达式的长度不超过一行,以$符作为输入结束,操作数之间用空格分隔,操作符只可能有+、一、*、/四种运算,例如:234—34+2*$。
admin
2019-01-16
39
问题
从键盘上输入一个逆波兰表达式,用伪码写出其求值程序。规定:逆波兰表达式的长度不超过一行,以$符作为输入结束,操作数之间用空格分隔,操作符只可能有+、一、*、/四种运算,例如:234—34+2*$。
选项
答案
逆波兰表达式(即后缀表达式)求值规则如下:设立运算数栈OPND,对表达式从左到右扫描(读入),当表达式中扫描到数时,压入OPND栈。当扫描到运算符时,从OPND退出两个数,进行相应运算,结果再压入OPND栈。这个过程一直进行到读出表达式结束符$,这时OPND栈中只有一个数,就是结果。 float expr(){ //从键盘输入逆波兰表达式,以’$’表示输入结束,本算法求逆波兰表达式的值 float OPND[30]; //OPND是操作数栈 init(OPND): //两栈初始化 float num=0.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,num);num=0.0; //数压入栈,下个数初始化 case’’:break: //遇空格,继续读下一个字符 case’+’:push(OPND,pop(OPND)+pop(OPND));break; case’一’:xl=pop(OPND);x2=pop(OPND);push(OPND,x2一x1);break; case’*’:push(OPND,pop(OPND)*pop(OPND)):break; case ’/’:xl:pop(OPND);x2=pop(OPND);push(OPND,x2/x1);break; default: //其他符号不作处理 }//结束switch scanf(”%c”,&x); //读入表达式中下一个字符 }//结束while(x!=’$’) prinff("后缀表达式的值为%f");pop(OPND); }
解析
转载请注明原文地址:https://kaotiyun.com/show/XiRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
阅读材料,回答问题:材料一:战后美国对一些新兴工业部门、重大科研项目、现代化公共设施等投入大量资金,如美国时发展原子能工业的投资,从1945年到1970年共计达175亿美元。美国还通过国家力量来扩张国外市场,从50年代中期起,为加强国际市场的竞争力,政府
在欧盟发展历史上,促使欧盟正式成立的文件是()。
论述罗马共和国早期对外征服的过程和历史意义。
春秋战国时期,提出“祸兮福之所倚,福兮祸之所伏”的思想家是()。
阅读材料,回答以下问题:一、大清帝国之皇统,万世不易。二、皇帝神圣,不可侵犯。三、皇帝权以宪法规定为限。四、皇帝继承之顺序,于宪法规定之。五、宪法由资政院起草议决,皇帝颁布之。六、宪政改正提案权,属于国会。七、上院议员,由国民于法定特别资格公选之。八、总
阅读材料,回答以下问题:材料一:甘地认为,非暴力抵抗是印度争取摆脱殖民桎梏的唯一正确办法;同时,他认为非暴力抵抗并不意味着对外国统治和其他罪恶的屈服。他写道:“我深信假如只有在怯懦和暴力两者之间加以选择时,我将劝人选择暴力……我宁愿要印度用暴力来保护自己
下列哪一个不是罗马王政时代的管理机构?()
赋税是我国古代国家宏观管理经济的重要手段。 据此回答问题:乾隆年间的税种有()
在一个HDLC帧的数据中,如果出现了000111111011这样的流,请问发送到信道上它将会变成()。
在二叉树的顺序存储中,每个结点的存储位置与其父结点、左右子树结点的位置都存在一个简单的映射关系,因此可与三叉链表对应。若某二叉树共有n个结点,采用三叉链表存储时,每个结点的数据域需要d个字节,每个指针域占用4个字节,若采用顺序存储,最后一个结点下标为k(起
随机试题
单独作为诊断颅底骨折的依据中,正确的是()
患者,中年男性。血尿半个月余,IVP示同侧肾盂、输尿管及膀胱均充盈缺损。该患者诊断可能性最大的是
慢性支气管炎最常见的并发症是
属于可保疾病的有( )。
处理会中突发事件要特别注意()。
______指群体对每一个成员的吸引力。
戊戌维新运动不是偶然的,它的发生有其深刻的历史背景,主要有()
下列说法中,正确的是( )。
Archaeology,likemanyacademicwords,comesfromGreekandmeans,moreorless,"thestudyofoldthings".So,itisreallyapa
BecauseHongKonghavemillionsofvisitorseachyear,sotheDisneyland’sattendanceissuretobeveryhighduringtheLaborD
最新回复
(
0
)