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

问题:

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

A . a-b+c*d
B . (a-B.*c+d
C . (a-B.*(c+D.
D . a-b*c+d

工业药剂学的主要任务是为临床提供安全、有效、稳定和便于使用的优质产品。() 常见的液体剂型有汤剂、合剂、散剂、糖浆剂、药酒、注射剂等。() 常见的固体剂型有散剂、颗粒剂、合剂、胶囊剂等。() 函数t、f的定义如下所示,其中,a是整型全局变量。设调用函数t前a的值为5,则在函数中以传值调用(callbyvalue)方式调用函数f时,输出为(1);在函数t中以引用调用(callbyreference)方式调用函数时,输出为(2)()。 空白(2)处应选择 12。 16。 20。 24。 函数t、f的定义如下所示,其中,a是整型全局变量。设调用函数t前a的值为5,则在函数中以传值调用(callbyvalue)方式调用函数f时,输出为(1)();在函数t中以引用调用(callbyreference)方式调用函数时,输出为(2)。 空白(1)处应选择 12。 16。 20。 24。 算术表达式采用逆波兰式表示时不用括号,可以利用(1)进行求值。与逆波兰式ab-cd+*对应的中缀表达式是(2)。空白(2)处应选择()
参考答案:

  参考解析

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

在线 客服