北京理工06年上级题

来源:互联网 发布:淘宝天天特价有必要吗 编辑:程序博客网 时间:2024/04/29 19:58
2006年复试体验
        上机和去年一样是三道题,都不是太复杂,用C++来实现,在90分钟内完成。这次并未延长时间,到点儿就让大家都出去了。然后再几个一组地叫进去进行判 分,等待的心情很复杂啊。后来,听北理的同学说这次上机考得都不好,200多人参加考试平均分才十四五分,比较低。其实,我感觉题目并不难,可能大家平时 上机少,不熟悉也可能是时间稍短一些。本人答得也不好,老师当时未告诉我分,可能也就24分左右将将及格(总分40分),因为我最后一题时间不够,虽已经 写完,并未调试成功。老师只给了定义类的分,很惨。我已经工作多年,练习用C++也挺长时间,本来打算在编程上面要拿30-35分,可惜只这么少的可怜的 一点点,刚从机房出来,我都感觉这次复试有可能过不了,因为后面的英语口语和专家面试都不是我的强项,上午的听力也不怎么样。中午没怎么吃饭,我是第二年 考了,压力比较大。
        言归正传,在这里主要说说今年的上机题目吧。
        第一题8分,是说将一个字符串中的‘0’-‘9’数字符的位置打印出来,例如输入a9dafd0b,则显示2 7,如果字条串中没有数字就显示一个0(这道题目可以不用面向对象的方法完成)。
        第二题12分,建立一个CInverse类,能够存储整型变量,并可算出其逆序数,例如234的逆序数为432;至多输入10个整型数字(以0结束),以 输入的顺序建立对象,并在对象生命期结束前打印出整数和其逆序数,例如输入12,234,0则应输出12,21
  234,432。
        第三题20分,建立一个CTriangle类,用来保存直角三角形;一个三角形可以用如下图的方法来表示,即以坐标原点表示三角形的直角顶点,两个直角边分别在X轴和Y轴上,顶点坐标为(Cx,Ay);
        1.写出CTriangle类,并定义好其构造函数;
        2.重载实现两个三角形的“+”运算,即实现把两个三角形相加,例如第一个三角形的(Cx,Ay)为(1,2),第一个三角形的(Cx,Ay )为(3,5),则两个三角形相加为(4,6),若符号不同则绝对值大的符号一致(题目记得不太清了,可能是这样);
        3.动态输入不超过10个三角形的数据,保存起来;
        4.把刚输入三角形全部相加起来;
        5.输出每个三角形的数据,并把相加结果输出,例如:
        输入1,2, 3,5,0则输出:
                        A:(1,2) B:(3,5) 和(4,6)。
        题目大致就是这样,不是很难但做起来也不太容易,可能涉及到算法要比去年多一些。我的建议是大家还是要把北理历年的上机题目都自己新手上机编几遍,做到烂熟于胸,而且要重视C++的运算符的重载及cin,cout流的控制用法,只有这样才能拿高分。
        另外,这次答题前老师说了,是黑盒测试,如果未得到预计结果老师也会看一个源程序,但基本上得也了什么分了,我的第三题就属于这种情况。
原创粉丝点击