第一部分,不定向选择
第二部分,填空题
1. 什么是UML?分哪两类?
2. OS一般的两种进程调度策略
3. 进程间的四种通讯方式
4. 一棵二叉树的前序,中序,后序遍历结果
第三部分,问答题
1. 通常递归所采用的数据结构?递归和循环的区别?
2. 将一个单链表逆序。
3. A,B,C,D四个进程,A向一个缓冲区写数据,B,C,D从该缓冲区读数据,A要等到B,C,D都已经读好才能写下一个。用p,v操作实现通讯。
4. C 程序写运行结果。
class A
{
public:
void f1()
{
printf("A::f1\r\n");
}
virtual void f2()
{
printf("A::f2\r\n");
}
void callfunc()
{
printf("A::callfunc\r\n");
f1();
f2();
}
};
class B :public A
{
public:
void f1()
{
printf("B::f1\r\n");
}
void f2()
{
printf("B::f2\r\n");
}
void callfunc()
{
printf("B::callfunc\r\n");
f1();
f2();
}
};
int main()
{
B *pB=new B;
pB->callfunc();
A *pA=pB;
pA->callfunc();
return 0;
}
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
前面已经有人写了,hehe,我写一下稍微详细的版本:
中断优先级排序
补码:写出0,-1,-5的二进制补码
递归的优缺点;写程序的结果;求出一个学生成绩数组的max,min和average的值
网络知识:路由器的作用,DNS的原理
项目开发:软件流程,瀑布模型;黑盒测试
数据库:创建一个数据库,创建一个表,包含主键,索引。
操作系统:进程调用,死锁,页面置换
无线通信:CDMA的软容量(6分);
CDMA的反向闭环功率控制原理(7分);
CDMA的关键技术(7分)。这三个题我都不会写 :(
还有两个故事(情景题),来测试你对团队的管理制度的看法;还有你的意见和权威冲突的时候,你的立场 。
今天参加了华为的笔试,做技术的,考的东西涉及比较广。主要包含了以下九个部分:
计算机系统。
数据结构。
面向对象编程。
C/C++ 。
软件工程。
操作系统。
数据库系统。
计算机网络。
无线通信。
虽然除了无限通信以外都学过,不过都还给老师了。所以今天做的很差,丢人啊。 看来做技术的话还是得把大学学过的东西稍微复习一下。
注:此观点只适合普通人。
昨晚上半夜12点多发来短信,说今天中午1点钟笔试,时间一小时。唉,已经连续3天笔 试了,觉得都有点儿麻木了,考试就是机械的做题,会就会,不会就瞎答,呵呵。昨晚 听了他们的宣讲,不是很想去,做低端路由器的,虽然公司发展得蛮快的。小硕税前580 0,年底有奖金,越早能去越好。因
为有个同学在里面实习,居然周六还要加班,据说很累,从华为分出来的,能不累么,sigh。
至于考试题,没有仔细记,主要是1个小时时间有点儿紧,10道选择,大多数是C的,50分,然后两题填空,20分,第二题不是编程,是个数学题。第三部分写两个函数,30分,第一题是把一个unsigned long的数转成一个IP地址输出,应该很容易的,结果自己想复杂了,浪费了不少时间,最后还没做对,晕。第二题是两个长度为N的数字字符串 相加,结果保存在一个长度为N+1的字符串里,思路倒是很清楚,后来发现好像在处理进 位和前一位的和的时候还有进位的问题,但是懒得改了,就这样吧。最后一部分是附加 题,10题选择,20分,内容主要是和IP网络有关的,因为它们就是做这个的,呵呵,不 会的就凭感觉了。
第一次做完题都没任何想法,可能不太想去吧,所以当成个任务了,也许又会被b4 吧,呵呵,无所谓了。晚上又有上海贝尔阿尔卡特的宣讲,都懒得去了,网上投了个岗 位,地点都是在上海的,BUPT被划为二类学校,落户都很成问题,实在没什么兴趣。
一、判断题(对的写T,错的写F并说明原因,每小题4分,共20分)
1、有数组定义int a[2][2]={{1},{2,3}};则a[0][1]的值为0。( )
2、int (*ptr) (),则ptr是一维数组的名字。( )
3、指针在任何情况下都可进行>, <, >=, <=, = =运算。( )
4、switch(c) 语句中c可以是int, long, char, float, unsigned int 类型。( )
5、#define print(x) printf("the no, "#x",is ")
二、填空题(共30分)
1、在windows下,写出运行结果,每空2分,共10分。
char str[ ]= "Hello";
char *p=str;
int n=10;
sizeof(str)=( )
sizeof(p)=( )
sizeof(n)=( )
void func(char str[100])
{ }
sizeof(str)=( )
2、void setmemory(char **p, int num)
{ *p=(char *) malloc(num);}
void test(void)
{ char *str=NULL;
getmemory(&str,100);
strcpy(str,"hello");
printf(str);
}
运行test函数有什么结果?( )10分
3、设int arr[]={6,7,8,9,10};
int *ptr=arr;
(ptr++)+=123;
printf("%d,%d",*ptr,*(++ptr));
( ) 10分
二、编程题(第一小题20,第二小题30分)
1、 不使用库函数,编写函数int strcmp(char *source, char *dest)
相等返回0,不等返回-1;
2、 写一函数int fun(char *p)判断一字符串是否为回文,是返回1,不是返回0,出错返回-1
般2-3轮,其中最后一轮为综合面试.
1.C语言通吃,会让你编小程序(譬如打印2-1000之间的素数),挑程序错误(函数调用, 释放内存,etc.).
2.数据结构的二叉树,排序等要好好看看.譬如让你任写一种排序方法,任写一种遍历二叉树的方法,逐行打印二叉树,等等.
sizeof是什么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的五层结构图?
Q2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用? TCP与UDP呢?
Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的?
Q4:请问C 的类和C里面的struct有什么区别?
Q5:请讲一讲析构函数和虚函数的用法和作用?
Q6:全局变量和局部变量有什么区别?实怎么实现的?操作系统和编译器是怎么知道的?
Q7:一些寄存器的题目,主要是寻址和内存管理等一些知识。
Q8:8086是多少尉的系统?在数据总线上是怎么实现的?
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论