当前位置:中级软件设计师题库>程序语言基础知识题库

问题:

[单选] 算术表达式采用逆波兰式表示时不用括号,可以利用(1)进行求值。与逆波兰式ab-cd+*对应的中缀表达式是(2)。空白(1)处应选择()

A . 数组
B . 栈
C . 队列
D . 散列表

常见的液体剂型有汤剂、合剂、散剂、糖浆剂、药酒、注射剂等。() 常见的固体剂型有散剂、颗粒剂、合剂、胶囊剂等。() 若某文件系统的目录结构如图所示,假设用户要访问文件f1.java,且当前工作目录为Program,则该文件的全文件名为(1),其相对路径为(2)。空白(1)处应选择()。 f1.java。 DocumentJava-progf1.java。 D:ProgramJava-progf1.java。 ProgramJava-progf1.java。 函数t、f的定义如下所示,其中,a是整型全局变量。设调用函数t前a的值为5,则在函数中以传值调用(callbyvalue)方式调用函数f时,输出为(1)();在函数t中以引用调用(callbyreference)方式调用函数时,输出为(2)。 空白(1)处应选择 12。 16。 20。 24。 若一种程序设计语言规定其程序中的数据必须具有类型,则有利于()。在翻译程序的过程中为数据合理分配存储单元②对参与表达式计算的数据对象进行检查③定义和应用动态数据结构④规定数据对象的取值范围及能够进行的运算⑤对数据进行强制类型转换 ①②③。 ①②④。 ②④⑤。 ③④⑤。 算术表达式采用逆波兰式表示时不用括号,可以利用(1)进行求值。与逆波兰式ab-cd+*对应的中缀表达式是(2)。空白(1)处应选择()
参考答案:

  参考解析

逆波兰式表示方式把运算符写在运算对象的后面,不需要使用括号。由于逆波兰式表示中的各个运算是按顺序执行的,因此,它的计值很容易实现。为此,仅需从左到右依次扫视表达式中的各个符号,每遇到一个运算对象,就把它压入栈顶暂存起来;每遇到一个二元(或一元)运算符时,就取出栈顶的两个(或一个)运算对象进行相应的运算,并用运算结果去替换栈顶的这两(或一)个运算对象,然后再继续扫视余留的符号,如此等等,直到扫视完整个表达式为止。当上述过程结束时,整个表达式的值将留于栈顶。a-b+c*d对应的逆波兰式为ab-cd*+。(a-b)*c+d对应的逆波兰式为ab-c*d+。(a-b)*(c+d)对应的逆波兰式为ab-cd+*。a-b*c+d对应的逆波兰式为abc*-d+。

在线 客服