北理计算机2010年研究生复试上机题目

目录

北理计算机2010年研究生复试上机题目

共两道题,当时没有写下来,只能回忆个大概意思。

第一题

对一组输入数字进行下面四种操作,输入数字类似:

12,34,2,15,26,8,40

实现下面操作1,a m,将m加到序列最后,例如输入

a 15

输出结果:

12,34,2,15,26,8,40,8

操作2,c/m/n,将序列中m全都换成n,例如输入

c/8/7

输出为

12,34,2,15,26,7,40,7

操作3,d/m,将序列中的m全部删除(中间的是空格还是"/“忘记了),例如输入

d/7

输出为:

12,34,2,15,26,40

操作4,s,将序列从小到大排序,例如输入

s

输出为:

2,12,15,26,34,40

以上就是第一题。这里没有表格功能,要不看起来更明显。

第二题 :(无数人折戟于此,包括我在内)

用程序实现简单的表达式计算:数字只有个位,符号包括+、-、、/和括号(、)。其中+、-是单目和双目运算符,、/是双目运算符,括号只有小括号一种,并且括号可以嵌套(好像还有不超过三层?)。

例如输入下面的表达式

3+3/2-5 输出:-1

4+(2-3*5) 输出:-9

1+(-3) 输出:-2

大致上是这样,要求就这么多,最后算成绩的时候也是和上面类似的三个算式。

=======================================================================

当时只做出第一题,第二题花了一个小时最后验收时编译出错,一分没得。没想出来应该怎样实现,尤其是单目运算,其次是括号。

求各路高手解答下第二题。