华为试题.docx
- 文档编号:27012079
- 上传时间:2023-06-25
- 格式:DOCX
- 页数:10
- 大小:22.47KB
华为试题.docx
《华为试题.docx》由会员分享,可在线阅读,更多相关《华为试题.docx(10页珍藏版)》请在冰豆网上搜索。
华为试题
第一部分,不定向选择
第二部分,填空题
1.什么是UML?
分哪两类?
UML(UnifiedModelingLanguage的缩写)统一建模语言,是用来对软件密集系统进行可视化建模的一种语言。
UML为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。
是在开发阶段,说明,可视化,构建和书写一个面向对象软件密集系统的制品的开放方法。
静态图:
是描述对象之间可能存在的关系的种类,以及作为结果的对象网络可以具有的可能的拓朴结构。
动态图:
是描述可以在对象之间传递的消息以及该消息对接收消息的对象的影响。
2.OS一般的两种进程调度策略
FIFO,
3.进程间的四种通讯方式
1.消息传递(管道,FIFO,posix和systemv消息队列)
2.同步(互斥锁,条件变量,读写锁,文件和记录锁,Posix和SystemV信号灯)
3.共享内存区(匿名共享内存区,有名Posix共享内存区,有名SystemV共享内存区)
4.过程调用(Solaris门,SunRPC)
4.一棵二叉树的前序,中序,后序遍历结果
第三部分,问答题
1.通常递归所采用的数据结构?
递归和循环的区别?
2.将一个单链表逆序。
3.A,B,C,D四个进程,A向一个缓冲区写数据,B,C,D从该缓冲区读数据,A要等到B,C,D都已经读好才能写下一个。
用p,v操作实现通讯。
4.C程序写运行结果。
classA
{
public:
voidf1()
{
printf("A:
:
f1\r\n");
}
virtualvoidf2()
{
printf("A:
:
f2\r\n");
}
voidcallfunc()
{
printf("A:
:
callfunc\r\n");
f1();
f2();
}
};
classB :
publicA
{
public:
voidf1()
{
printf("B:
:
f1\r\n");
}
voidf2()
{
printf("B:
:
f2\r\n");
}
voidcallfunc()
{
printf("B:
:
callfunc\r\n");
f1();
f2();
}
};
intmain()
{
B*pB=newB;
pB->callfunc();
A*pA=pB;
pA->callfunc();
return0;
}
取自"
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
前面已经有人写了,hehe,我写一下稍微详细的版本:
中断优先级排序
补码:
写出0,-1,-5的二进制补码
递归的优缺点;写程序的结果;求出一个学生成绩数组的max,min和average的值
网络知识:
路由器的作用,DNS的原理
项目开发:
软件流程,瀑布模型;黑盒测试
数据库:
创建一个数据库,创建一个表,包含主键,索引。
操作系统:
进程调用,死锁,页面置换
无线通信:
CDMA的软容量(6分);
CDMA的反向闭环功率控制原理(7分);
CDMA的关键技术(7分)。
这三个题我都不会写:
(
还有两个故事(情景题),来测试你对团队的管理制度的看法;还有你的意见和权威冲突的时候,你的立场。
取自"
今天参加了华为的笔试,做技术的,考的东西涉及比较广。
主要包含了以下九个部分:
计算机系统。
数据结构。
面向对象编程。
C/C++。
软件工程。
操作系统。
数据库系统。
计算机网络。
无线通信。
虽然除了无限通信以外都学过,不过都还给老师了。
所以今天做的很差,丢人啊。
看来做技术的话还是得把大学学过的东西稍微复习一下。
注:
此观点只适合普通人。
取自"
昨晚上半夜12点多发来短信,说今天中午1点钟笔试,时间一小时。
唉,已经连续3天笔试了,觉得都有点儿麻木了,考试就是机械的做题,会就会,不会就瞎答,呵呵。
昨晚听了他们的宣讲,不是很想去,做低端路由器的,虽然公司发展得蛮快的。
小硕税前5800,年底有奖金,越早能去越好。
因为有个同学在里面实习,居然周六还要加班,据说很累,从华为分出来的,能不累么,sigh。
至于考试题,没有仔细记,主要是1个小时时间有点儿紧,10道选择,大多数是C的,50分,然后两题填空,20分,第二题不是编程,是个数学题。
第三部分写两个函数,30分,第一题是把一个unsignedlong的数转成一个IP地址输出,应该很容易的,结果自己想复杂了,浪费了不少时间,最后还没做对,晕。
第二题是两个长度为N的数字字符串相加,结果保存在一个长度为N+1的字符串里,思路倒是很清楚,后来发现好像在处理进位和前一位的和的时候还有进位的问题,但是懒得改了,就这样吧。
最后一部分是附加题,10题选择,20分,内容主要是和IP网络有关的,因为它们就是做这个的,呵呵,不会的就凭感觉了。
第一次做完题都没任何想法,可能不太想去吧,所以当成个任务了,也许又会被b4吧,呵呵,无所谓了。
晚上又有上海贝尔阿尔卡特的宣讲,都懒得去了,网上投了个岗位,地点都是在上海的,BUPT被划为二类学校,落户都很成问题,实在没什么兴趣。
取自"
一、判断题(对的写T,错的写F并说明原因,每小题4分,共20分)
1、有数组定义inta[2][2]={{1},{2,3}};则a[0][1]的值为0。
()
2、int(*ptr)(),则ptr是一维数组的名字。
()
3、指针在任何情况下都可进行>,<,>=,<=,==运算。
()
4、switch(c)语句中c可以是int,long,char,float,unsignedint类型。
()
5、#defineprint(x)printf("theno,"#x",is")
二、填空题(共30分)
1、在windows下,写出运行结果,每空2分,共10分。
charstr[]="Hello";
char*p=str;
intn=10;
sizeof(str)=()
sizeof(p)=()
sizeof(n)=()
voidfunc(charstr[100])
{}
sizeof(str)=()
2、voidsetmemory(char**p,intnum)
{*p=(char*)malloc(num);}
voidtest(void)
{char*str=NULL;
getmemory(&str,100);
strcpy(str,"hello");
printf(str);
}
运行test函数有什么结果?
()10分
3、设intarr[]={6,7,8,9,10};
int*ptr=arr;
(ptr++)+=123;
printf("%d,%d",*ptr,*(++ptr));
()10分
二、编程题(第一小题20,第二小题30分)
1、不使用库函数,编写函数intstrcmp(char*source,char*dest)
相等返回0,不等返回-1;
2、写一函数intfun(char*p)判断一字符串是否为回文,是返回1,不是返回0,出错返回-1
取自"
般2-3轮,其中最后一轮为综合面试.
1.C语言通吃,会让你编小程序(譬如打印2-1000之间的素数),挑程序错误(函数调用,释放内存,etc.).
2.数据结构的二叉树,排序等要好好看看.譬如让你任写一种排序方法,任写一种遍历二叉树的方法,逐行打印二叉树,等等.
3.偶尔考考微积分,如中值定理,求复杂函数的二次导数...
4.简单的信号与系统知识,如线性系统的定义(最好数学表达).
5.据说还有问数电的.
6.偶尔与专业无关的小题目.如吹气球为何是球而非正方.
7.问:
你喜欢围棋吗?
兴趣蛮多.什么情况下会出现平局?
?
其目的大概是考察简历的真实性,检验基础知识.所以最好强调你熟悉的,
譬如问你所学课程,学的不太好的就不必说了,因为任何一门课程都有被问的可能.
面试过程中不必紧张,我觉得有时面试官在乎的不是你说的是什么(what),
而是你说的方式(how).
取自"
下午3:
30接到通知后打车到华为!
技术人员A接待我,首先询问了一些项目经验,从数据库到编程语言,看起来此人比较的牛,然后让我做一套c题目,题量很大不要求做完,因为只有20分钟,题目还是比较难的,分为初级,中级,高级,我一看时间有限,就先做高级部分,还好会做,又将中级部分大致做完,初级部分就大概谢谢20分钟到后交卷,感觉中等吧,A看了一会儿,感觉我还行,又让我将中级部分其中一个比较难的题目做完(刚才由于没有时间,只是写了一个做题思路,)10分钟,ok做出来了
A向技术人员B说我做的题挺好,于是B又找了一个题目让我做,10分钟作出来了,应该没有错,不过没有像刚才听到评价。
过了一会儿,人事C过来跟我谈,跟我谈了10多分钟,无外乎常规的聊天,感觉一般,不知道C对什么感兴趣,当然中间还是对自己进行了表扬!
最后:
C对我说三天之内通知是否录取.原话"现在面试人比较的多,如果有戏,我们会三天之内通知你"
感想:
非常的疲倦,题目本身比较的刁,可能还是自己比较在乎这个职位。
hehe一个北大的cs硕士,从上午一直面试到我去,听说中间还做了智力题,不知道我还有没有戏,不过我觉得自己今天表现的还是不错的,hehe其它的兄弟们怎么样?
?
事前准备:
我是抱着增长经验的心态去的,所以准备的不是很充分,登记表上空了很多.8:
55到达光华中心,在大厅等了两三分钟,然后就到5楼参加面试.
9:
00开始正式面试
那里有一个类似于教室的大房间,摆了几张课桌,基本上是一对一的面试.两个人面对面坐着,采取一问一答的形式,(今天天气有点冷,我衣服穿少了点,那里没有空调)提的问题我还记得的如下(大意),回答略去,次序可能有误:
1)还有其他的材料吗?
(这是因为我的登记表不全,xixi)
2)专业的研究内容
3)以前打工的东西的内容
4)是否做过数据库方面的东西,对于foxpro,oracle,sybase是否熟悉
5)是否做过比较大的项目,比如2000行以上的程序
6)读博吗?
出国吗?
7)在哪里工作?
8)面向对象的概念
9)排序算法的简述,复杂度的计算
10)队列和堆栈的区别
因为我有点紧张,又有点冷,所以话说的比较快,不过应该还算清晰.感觉问题不是事先准备好的,而是临时想的(面试官发呆的时间比我长,xixi)有些问题回答的还可以,有些就回答的不太好.
9:
10面试结束,要我回去等消息,我就回来了.一般是20分钟,我的时间是最短的,10分钟解决战斗,呵呵(不过短好象不是好事的说)
事后评价:
因为个人不是很重视,加上专业不是很符合需要,所以不是很能让对方满意.不过对我而言也没什么损失,达到了增长经验的目的.
btw:
写这么长文章骗一点经验值有点亏的说.
华为面试题
Q1:
请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图?
OSI:
物理层——数据链路层——网络层——传输层——会话层——表示层——应用层
TCP/IP:
物理层——数据链路层——互联网层——传输层——应用层(5层)
网络接口层——互联网层——传输层——应用层(4层)
Q2:
请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用?
TCP与UDP呢?
IP协议:
也就是为计算机网络相互连接进行通信而设计的协议。
TCP:
面向带连接的数据传输协议(传输层)
UDP:
面向无连接的数据传输协议(处于第四层传输层)
Q3:
请问交换机和路由器分别的实现原理是什么?
分别在哪个层次上面实现的?
交换机用来共享一根网线,路由器用来共享一个IP。
如果一根网线上想接几个电脑,就必须用,交换机;如果你只有一个IP,想几个电脑上网,就要用路由器来解决。
比如宽带路由器就可以让家里的几台电脑共享同一个账号上网;在已经共享上网的情况下,某房间只有一根网线,有多台电脑要上网,用交换机。
交换机在OSI七层模型的第二层,路由器在第三层,
路由器有路由和转发的功能,单交换机只负责转发,而不进行路由(不包括三层路由)
Q4:
请问C的类和C里面的struct有什么区别?
Q5:
请讲一讲析构函数和虚函数的用法和作用?
Q6:
全局变量和局部变量有什么区别?
实怎么实现的?
操作系统和编译器是怎么知道的?
Q7:
一些寄存器的题目,主要是寻址和内存管理等一些知识。
Q8:
8086是多少尉的系统?
在数据总线上是怎么实现的?
取自"
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 华为 试题