1、黑盒测试包括什么?
3种:等价分类,边界值分析,对比测试 2、正则表达式 x|(yx+) 选出不匹配的 A,x B,xyxx C,yx D,yxxx B
3、将abcde入栈,不可能的出栈顺序 A,abcde B,decba C,decab D,edcba C
4、考察结构体 #include int * p; int * p2; }; void main() { struct S mys; int *p=&mys.p; // error C2440: 'initializing' : cannot convert from 'int ** ' to 'int *' p[0]=1; p[1]=2; } 问程序的运行结果 5、5*4的矩形,这里有几个长方形?(填空题) 按矩形的长和宽分类去数,很容易发现规律: (5+4+3+2+1)×(4+3+2+1)=15×10=150 答案是150个矩形 6、(这一题很巧妙) x=5678 求函数返回数值(填空) int foo(int x) { int count=0; while(x) { count++; x=x&(x-1); } return count; } 按程序运行步骤去做,发现程序的作用是: 查看1的个数。5678=(1011000101110),有7个1,结果为7。 7、球队比赛出线问题 足球比赛,每组有N个队,N>=3。胜一场3分,平一场1分,输一场0分,每组取前两名,要想出小组,最少得多少分。 N-1 其中第二名,全平,N-1可出线; 第一名与第二名平一次,其余全胜,得分1+(N-2)×3; 剩下N-2队输了一局,其余全平,可得N-2 所以要想出线,最少可以是N-1分,低于N-1分就不可能出线了。 8、考察C++的继承 # include “stdafx.h” # include public : void virtual run() { cout<<”A”< cout<<”AA”< public : void run() { A::run(); cout<<”B”< cout<<”BB”< A * a=new B(); a->run(); a->disp(); } 结果:(填空题) A B BB A B AA 9、晚上过桥问题 小米一家晚上回家要过一座桥,只有一根蜡烛且这根蜡烛只能燃烧30秒, 雷军过桥需要1秒,小米手机过桥需要3秒,小米MIUI过桥需要6秒,小米论坛过桥需要8秒,米聊过桥需要12秒。 一次最多只能同时两人过桥, 请问怎么样小米一家才能安全过桥? 雷军 + 小米 过,3秒;雷军 回,1秒;小米论坛 + 米聊论坛过,12秒;小米回 ,3秒;雷军+小米手机过 ,6秒;雷军回,1秒;雷军+小米过 ,3秒 ; 即: 3+1+12+3+6+1+3 = 29; 10、数字规律变化题:87 57 36 19 10 。按规律写出下个数字 后一个=前一个十位数字×个位数字+1 8×7+1=57 5×7+1=36 3×6+1=19 1×9+1=10 1×0+1=1 下一个是1 11、编程题 有一个数组(非递减),旋转了不知道多少个位,在该数组中找一个数的下标。写出代码(用C/C++或者java) 并分析时间空间复杂度,考虑效率(很重要)。(本人认为可以采用改进的折中查找法) eg:数组 [6,7,1,2,3,4,4] 找3,返回4; 函数原型 C/C++: int find(int * a,int n,int count) count为a数组长度;n为要查找的数 Java: int find(int []a,int n) 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo0.com 版权所有 湘ICP备2023021991号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务