最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

华为笔试题总汇(超全)

来源:动视网 责编:小OO 时间:2025-09-23 18:21:55
文档

华为笔试题总汇(超全)

华为面试流程一共5轮首先资格考试和面试(相应职位的资深工程师主持);其次应聘职位的部门付经理面试再次应聘职位的部门付经理面试再次人事面试最后是付总级的面试。常问问题:Q1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图?Q2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用?TCP与UDP呢?Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的?Q4:请问C++的类和C里面的struct有什么区别?Q5:请讲一讲析构函数和虚函数的用法和作用?Q6
推荐度:
导读华为面试流程一共5轮首先资格考试和面试(相应职位的资深工程师主持);其次应聘职位的部门付经理面试再次应聘职位的部门付经理面试再次人事面试最后是付总级的面试。常问问题:Q1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图?Q2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用?TCP与UDP呢?Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的?Q4:请问C++的类和C里面的struct有什么区别?Q5:请讲一讲析构函数和虚函数的用法和作用?Q6
华为面试流程一共5轮 

首先资格考试和面试(相应职位的资深工程师主持); 

其次应聘职位的部门付经理面试 

再次应 聘职位的部门付经理面试 

再次人事面试 

最后是付总级的面试。 

常问问题: 

Q1:请你分别划 划OSI的七层网络结构图,和TCP/IP的五层结构图? 

Q2:请你详细的解释一下IP协议的定义,在哪个层上面, 主要有什么作用? TCP

与UDP呢?   

Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次 上面实现的?

Q4:请问C++的类和C里面的struct有什么区别?    

Q5:请讲一讲析构函数和虚函数的用法和作用?    

Q6:全局变量和局部变量有什么区别?实怎么实现的?操 作系统和编译器是怎么知

道的?    

Q7:一些寄存器的题目,主要是寻址和内存管理等一些知识。    

Q8:8086是多少位的系统?在数据总线上是怎么实现的? 

测试题:

1、由于你是新员工,没有公配手机时,当你在现场遇到紧急事故时,你会()向公司求助

A、打用户机房内的电话 

B、借用户手机 

C、拔110 

D、拔200或300 

E、立即打车回办事处 

(答案:D,答CE者立即辞退,按照公司规定,不能随便使用用户的电话,以提高公司

形象) 

2、工程师A 某周日晚正在家里看电视,突然手机响了,电信局运维员工突然 

打电话过来,小A接起电话,用户声音很急迫,说:“不好了,瘫了,你快来处理”。

请问这里“瘫了”最有可能是什么意思() 

A、设备漏电将维护人员电瘫了 

B、设备支架不够结实,被压瘫了 

C、设备坏了,将维护人员吓瘫了 

D、设备坏了,大面积业务中断了 

(答案:D,答错者,按不合格处理)

 

 

    Network: 

    1. 如何设计一个模型来检验通信协议的正确性? 

    2. 位于网络两端的计算机的 连接过程是怎样的? 

    3. 链路层的协议?     

    4. FSM和PETRI网哪个好 

    5. 中国一 号和七号信令的区别。     

    

    Hardware: 

    6. CPU里面有些什么东东,外面有些什么东东? 

    7. 指令执行分几个步骤 

    

    Languge and Compiler: 

    9. i = 0, 那么, ++i||i-- 的值? 

    8. c c++ java的区别? 

    9. 全局变量、局部变量、静态变量都放在内存的什么地方? 

    10. 结构与类的区别 

    11. a*b+c 这样的表达式如何写编译程序? 

    12  c++虚函数怎么实现 

    

    Data structure and Algorthim 

    13. 写出一个二分函数? 

    14. 写出一个字符串子串匹配的算法? 

    15  对一个一维数组排序     

    Software System: 

    16. UNIX文件系统的最大优点是什么? 

    17. fork函数的返回值是?     

    18.(软件)测试有 哪几种方法? 

    

    Database 

    19. 数据库编程哪部分最重要? 

    20. 未来的数据库(电子信 息数据库)的走向? 

    21. 数据库第一范式怎么表示

华为笔试题含答案 [软件工程题]

1.static有什么用途?(请至少说明两种)

    1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。

    2) 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。

    3) 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被在声明它的模块的本地范围内使用

2.引用与指针有什么区别?

    1) 引用必须被初始化,指针不必。

    2) 引用初始化以后不能被改变,指针可以改变所指的对象。

    3) 不存在指向空值的引用,但是存在指向空值的指针。

3.描述实时系统的基本特性在特定时间内完成特定的任务,实时性与可靠性。

4.全局变量和局部变量在内存中是否有区别?如果有,是什么区别?

      全局变量储存在静态数据库,局部变量在堆栈。

5.什么是平衡二叉树?

      左右子树都是平衡二叉树 且左右子树的深度差值的绝对值不大于1。

6.堆栈溢出一般是由什么原因导致的?

      没有回收垃圾资源。

7.什么函数不能声明为虚函数?

      constructor函数不能声明为虚函数。

8.冒泡排序算法的时间复杂度是什么?

      时间复杂度是O(n^2)。

9.写出float x 与“零值”比较的if语句。

if(x>0.000001&&x<-0.000001)

10.Internet采用哪种网络协议?该协议的主要层次结构?

      Tcp/Ip协议

      主要层次结构为: 应用层/传输层/网络层/数据链路层/物理层。

11.Internet物理地址和IP地址转换采用什么协议?

      ARP (Address Resolution Protocol)(地址解析協議)

12.IP地址的编码分为哪俩部分?

     IP地址由两部分组成,网络号和主机号。不过是要和“子网掩码”按位与上之后才能区分哪些是网络位哪些是主机位。

13.用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序。

     循环链表,用取余操作做

14.不能做switch()的参数类型是:

     switch的参数不能为实型。

随机输入一个数,判断它是不是对称数(回文数)(如3,121,12321,45254)。不能用字符串库函数 

/***************************************************************

1.

函数名称:Symmetry 

功能: 判断一个数时候为回文数(121,35653) 

输入: 长整型的数 

输出: 若为回文数返回值为1 esle 0 

******************************************************************/

unsigned char Symmetry (long n)

{

long i,temp;

i=n; temp=0;

while(i) //不用出现长度问题,将数按高低位掉换

{

temp=temp*10+i%10;

i/=10;

}

return(temp==n);

方法一 

/* --------------------------------------------------------------------------- 

功能: 

判断字符串是否为回文数字 

实现: 

先将字符串转换为正整数,再将正整数逆序组合为新的正整数,两数相同则为回文数字 

输入: 

char *s:待判断的字符串 

输出: 

无 

返回: 

0:正确;1:待判断的字符串为空;2:待判断的字符串不为数字; 

3:字符串不为回文数字;4:待判断的字符串溢出 

---------------------------------------------------------------------------- */ 

unsigned IsSymmetry(char *s) 

char *p = s; 

long nNumber = 0; 

long n = 0; 

long nTemp = 0; 

/*判断输入是否为空*/ 

if (*s == \\'\\\\0\\') 

return 1; 

/*将字符串转换为正整数*/ 

while (*p != \\'\\\\0\\') 

/*判断字符是否为数字*/ 

if (*p<\\'0\\' || *p>\\'9\\')

return 2; 

/*判断正整数是否溢出*/ 

if ((*p-\\'0\\') > (4294967295-(nNumber*10)))

return 4; 

nNumber = (*p-\\'0\\') + (nNumber * 10); 

p++; 

/*将数字逆序组合,直接抄楼上高手的代码,莫怪,呵呵*/ 

n = nNumber; 

while(n) 

/*判断正整数是否溢出*/ 

if ((n%10) > (4294967295-(nTemp*10)))

return 3; 

nTemp = nTemp*10 + n%10; 

n /= 10; 

/*比较逆序数和原序数是否相等*/ 

if (nNumber != nTemp) 

return 3; 

return 0; 

方法二 

/* --------------------------------------------------------------------------- 

功能: 

判断字符串是否为回文数字 

实现: 

先得到字符串的长度,再依次比较字符串的对应位字符是否相同 

输入: 

char *s:待判断的字符串 

输出: 

无 

返回: 

0:正确;1:待判断的字符串为空;2:待判断的字符串不为数字; 

3:字符串不为回文数字 

---------------------------------------------------------------------------- */ 

unsigned IsSymmetry_2(char *s) 

char *p = s; 

int nLen = 0; 

int i = 0; 

/*判断输入是否为空*/ 

if (*s == \\'\\\\0\\') 

return 1; 

/*得到字符串长度*/ 

while (*p != \\'\\\\0\\') 

/*判断字符是否为数字*/ 

if (*p<\\'0\\' || *p>\\'9\\')

return 2; 

nLen++; 

p++; 

/*长度不为奇数,不为回文数字*/ 

if (nLen%2 == 0) 

return 4; 

/*长度为1,即为回文数字*/ 

if (nLen == 1) 

return 0; 

/*依次比较对应字符是否相同*/ 

p = s; 

i = nLen/2 - 1; 

while (i) 

if (*(p+i) != *(p+nLen-i-1)) 

return 3; 

i--; 

return 0; 

1。数组应该初始化

2。memcpy不判断是否越界,所以调用前应该判断是否越界

3。不应该返回rest,因为这个数组是在函数内部申请的,所以函数结束之后就会消失,指针也会变成“野指针”,所以指向非法地址

最后一个比较隐蔽

char *memcpy( char *dest, const char *src,int len )

{

char* pDest = (char*)dest;

char* pSrc = (char*)src;

int pos;

for(pos=0;pos{

pDest[pos] = pSrc[pos];

}

return (char*)pDest;

}

存在地问题就是没有判断指针是否非法assert(dest !=NULL || src != NULL); 条件为 FLASE 显示

不调用其他函数,写一个memcpy的函数,函数原型为

void *memcpy(void *dest, void *src, size_t length);

-----------利用好断言---------

/* memcpy ─── 拷贝不重叠的内存块 */

void memcpy(void* pvTo, void* pvFrom, size_t size)

{

void* pbTo = (byte*)pvTo;

void* pbFrom = (byte*)pvFrom;

ASSERT(pvTo != NULL && pvFrom != NULL);

/* 内存块重叠吗?如果重叠,就使用memmove */

ASSERT(pbTo>=pbFrom+size || pbFrom>=pbTo+size);

while(size-->0)

*pbTo++ == *pbFrom++;

return(pvTo);

}

-----------------------

常见函数编程: 

char *strcpy(char *strDest, const char *strSrc) 

ASSERT(strDest != NULL && strSrc != NULL); 

char *addr = strDest; 

while(*strDest++=*strSrc++)

NULL; //NULL可以省略,但更有利于编译器发现错误

return addr; 

void *memcpy(void *dest, const void *src, int count) 

ASSERT(dest!= NULL && src!= NULL); 

for(int i=0; i< cout; i++)

dest = src; 

int strcmp(const char*str1, const char *str2) 

while (str1 != NULL && str2 != NULL) 

if(*str1 < *str2) return -1;

else if(*str1 > *str2) return 1;

else { str1++; str2++;} 

if(str1 == NULL && str2 != NULL) 

return -1; 

else if(str1 != NULL && str2 == NULL) 

return 1; 

else return 0; 

//way2: more compact 

int strcmp(const char*str1, const char *str2) 

int i = strlen( str1 ); 

int j; 

for(j=0; j<=i; j++)

if(str1[j] > str2[j]) return 1; //if str2 terminates, then str2[j]=0, str1[j]>str2[j], return 1;

else if(str1[j] < str2[j]) return -1;

else if(str1[j] == '') return 0; 

//way3: optimize again. 

int strcmp(const char * str1, const char * str2 ) 

while(1) 

if(*str1 > *str2) return 1;

else if(*str1 < *str2) return -1;

else if(*str1 == '') return 0; 

str1++;str2++; 

}

217. 路由器A的配置如下:

Quidway#SHOW RUN

Current configuration

!

user huawei service-无效 ppp password 0 quidway

!

interface Ethernet0

ip address 1.1.1.1 255.0.0.0

!

interface Serial0

encapsulation ppp

ppp authentication chap

ppp chap host huawei

ip address 2.1.1.1 255.0.0.0

!

interface Serial1

encapsulation ppp

!

interface Serial2

flowcontrol normal

async mode dedicated

encapsulation ppp

!

exit

ip route 0.0.0.0 0.0.0.0 2.1.1.2 preference 60

end

路由器B的配置如下

Quidway#SHOW RUN

Current configuration

!

user hw service-无效 ppp password 0 quidway

!

interface Ethernet0

ip address 3.1.1.1 255.0.0.0

!

interface Serial0

clock-select DTECLK1

encapsulation ppp

ppp chap host huawei

ip address 1.1.1.2 255.0.0.0

!

interface Serial1

encapsulation ppp

!

interface Serial2

flowcontrol normal

async mode dedicated

encapsulation ppp

!

exit

ip route 0.0.0.0 0.0.0.0 2.1.1.2 preference 60

end

一道华为笔试题

题目:请在小于99999的正整数中找符合下列条件的数,它既是完全平方数,又有两位数字相同,如:144,676。用c语言编写(不能用数字转换成字符串)。

#include

#include

//函数havesamenum确认num是否满足条件

int havesamenum(int num)

{

 int i=0,j;

 char a[10] = {0};

 

 while(num>0)

 {

  j=num%10;

  a[j]+=1;

  num=num/10;

 }

 while(a[i]<=1&&i<10)

  i++;

 if (i<10)

  return 1;

 else 

  return 0;

}

void main(void)

{

   int i,j,m;

 

 m=(int)sqrt(99999);

 for(i=1;i {

     j=i*i;

     if (1==havesamenum(j)) 

     printf("%6d\",j);

 }

}

        下图为运行结果:

这个简单的面试题目,我选输出 no(对比的应该是指针地址吧),可在VC是YES 在C是NO

lz的呢,是一个常量字符串。位于静态存储区,它在程序生命期内恒定不变。如果编译器优化的话,会有可能a和b同时指向同一个hello的。则地址相同。如果编译器没有优化,那么就是两个不同的地址,则不同

华为面试流程一共5轮 

首先资格考试和面试(相应职位的资深工程师主持); 

其次应聘职位的部门付经理面试 

再次应 聘职位的部门付经理面试 

再次人事面试 

最后是付总级的面试。 

常问问题: 

Q1:请你分别划 划OSI的七层网络结构图,和TCP/IP的五层结构图? 

Q2:请你详细的解释一下IP协议的定义,在哪个层上面, 主要有什么作用? TCP

与UDP呢?   

Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次 上面实现的?

Q4:请问C++的类和C里面的struct有什么区别?    

Q5:请讲一讲析构函数和虚函数的用法和作用?    

Q6:全局变量和局部变量有什么区别?实怎么实现的?操 作系统和编译器是怎么知

道的?    

Q7:一些寄存器的题目,主要是寻址和内存管理等一些知识。    

Q8:8086是多少位的系统?在数据总线上是怎么实现的? 

测试题:

1、由于你是新员工,没有公配手机时,当你在现场遇到紧急事故时,你会()向公司求助

A、打用户机房内的电话 

B、借用户手机 

C、拔110 

D、拔200或300 

E、立即打车回办事处 

(答案:D,答CE者立即辞退,按照公司规定,不能随便使用用户的电话,以提高公司

形象) 

2、工程师A 某周日晚正在家里看电视,突然手机响了,电信局运维员工突然 

打电话过来,小A接起电话,用户声音很急迫,说:“不好了,瘫了,你快来处理”。

请问这里“瘫了”最有可能是什么意思() 

A、设备漏电将维护人员电瘫了 

B、设备支架不够结实,被压瘫了 

C、设备坏了,将维护人员吓瘫了 

D、设备坏了,大面积业务中断了 

(答案:D,答错者,按不合格处理)

 

 

    Network: 

    1. 如何设计一个模型来检验通信协议的正确性? 

    2. 位于网络两端的计算机的 连接过程是怎样的? 

    3. 链路层的协议?     

    4. FSM和PETRI网哪个好 

    5. 中国一 号和七号信令的区别。     

    

    Hardware: 

    6. CPU里面有些什么东东,外面有些什么东东? 

    7. 指令执行分几个步骤 

    

    Languge and Compiler: 

    9. i = 0, 那么, ++i||i-- 的值? 

    8. c c++ java的区别? 

    9. 全局变量、局部变量、静态变量都放在内存的什么地方? 

    10. 结构与类的区别 

    11. a*b+c 这样的表达式如何写编译程序? 

    12  c++虚函数怎么实现 

    

    Data structure and Algorthim 

    13. 写出一个二分函数? 

    14. 写出一个字符串子串匹配的算法? 

    15  对一个一维数组排序     

    Software System: 

    16. UNIX文件系统的最大优点是什么? 

    17. fork函数的返回值是?     

    18.(软件)测试有 哪几种方法? 

    

    Database 

    19. 数据库编程哪部分最重要? 

    20. 未来的数据库(电子信 息数据库)的走向? 

    21. 数据库第一范式怎么表示

慧通试题

1 写出程序把一个链表中的接点顺序倒排

typedef struct linknode

{

int data;

struct linknode *next;

}node;

//将一个链表逆置

node *reverse(node *head)

{

node *p,*q,*r;

p=head;

q=p->next;

while(q!=NULL)

{

r=q->next;

q->next=p;

p=q;

q=r;

}

head->next=NULL;

head=p;

return head;

}

2 写出程序删除链表中的所有接点

void del_all(node *head)

{

node *p;

while(head!=NULL)

{

p=head->next;

free(head);

head=p;

}

cout<<"释放空间成功!"<}

3两个字符串,s,t;把t字符串插入到s字符串中,s字符串有足够的空间存放t字符串

void insert(char *s, char *t, int i)

{

char *q = t;

char *p =s;

if(q == NULL)return;

while(*p!='\\0')

{

p++;

}

while(*q!=0)

{

*p=*q;

p++;

q++;

}

*p = '\\0';

}

分析下面的代码:

char *a = "hello";

char *b = "hello";

if(a= =b)

printf("YES");

else

printf("NO");

文档

华为笔试题总汇(超全)

华为面试流程一共5轮首先资格考试和面试(相应职位的资深工程师主持);其次应聘职位的部门付经理面试再次应聘职位的部门付经理面试再次人事面试最后是付总级的面试。常问问题:Q1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图?Q2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用?TCP与UDP呢?Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的?Q4:请问C++的类和C里面的struct有什么区别?Q5:请讲一讲析构函数和虚函数的用法和作用?Q6
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top