文档库 最新最全的文档下载
当前位置:文档库 › 2015华为上机题

2015华为上机题

2015华为上机题
2015华为上机题

初级题:

删除重复数字

#include

int a[4096];

int main()

{

int i, j, in;

int c;

while(1)

{

i = 0;

if(scanf("%d", &a[i++]) != 1) break; //input eof

printf("%d",a[0]);

while(1)

{

c = getchar();

if(c == '\n' || c == EOF) break;

scanf("%d", &in);

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

if(in == a[j]) break;

if(j == i)

{

a[i++] = in;

printf(",%d", a[j]);

}

}

printf("\n");

if(c == EOF) break;

}

return 0;

}

中级题:

#include

#include

using namespace std;

//从小到大

int cmp1 ( const void *a , const void *b ) {

return *(int *)a - *(int *)b;

}

//从大到小

int cmp2 ( const void *a , const void *b ) {

return *(int *)b - *(int *)a;

}

int main()

{

int src;

int od[1000];

int ji[1000];

int o_index = 0;

int j_index = 0;

while(scanf("%d",&src)!=EOF)

{

if(src %2==0)od[o_index++]=src ;

else ji[j_index++]=src ;

}

qsort(ji,j_index,sizeof(int),cmp2);

qsort(od,o_index,sizeof(int),cmp1);

for (int i = 0; i < j_index-1; i++)

printf("%d ",ji[i]);

if(o_index>0)printf("%d ",ji[j_index-1]);

else printf("%d",ji[j_index]);

for (int i = 0; i < o_index-1; i++)

printf("%d ",od[i]);

printf("%d",od[o_index-1]);

return 0;

}

高级题:

初级题:

#include

#include

using namespace std;

int cmp ( const void *a , const void *b )

{

return *(int *)a - *(int *)b;

}

int main()

{

int src[25];

int od[10];

int ji[10];

int o_index = 0;

int j_index = 0;

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

{

scanf("%d",&src[i] );

if(src[i] %2==0)od[o_index++]=src[i] ; else ji[j_index++]=src[i] ;

}

qsort(od,o_index,sizeof(int),cmp);

qsort(ji,j_index,sizeof(int),cmp); memset(src,0,sizeof(src));

int k = o_index>j_index?o_index:j_index; for(i = 0; i < k; i++)

{

if(i

src[2*i+1] = od[i] ;

else src[2*i+1] = 0;

if(i

src[2*i]=ji[i] ;

else src[2*i]=0;

}

int t = 0;

for(t= 0; t < 2*k-2; t++)

printf("%d ",src[t] );

printf("%d",src[t++]);

if(src[t] !=0)printf(" %d",src[t] );

return 0;

}

中级题:

#include

using namespace std;

int main()

{

char str[129];

int len;

int i;

bool flag=false;

//gets(str);

while(gets(str)!=NULL)

{

len=strlen(str);

if(str[0]>='A' && str[0]<='Z') {

for(i=1;i

{

if(str[i] >='A' && str[i]<='Z')

break;

}

if(i==len)

flag=true;

else

flag=false;

}

if(flag==true)

cout<<"true"<

else

cout<<"false"<

}

}

高级题:

#include

#include

#include

#include

using namespace std;

int map_g[100][100];

int m_find[20];

map my;

int check(int m,int n){

/*

A发送短信的接收者中,没有发过短信给A的人数 > L。

A发送的短信数 - A接收的短信数 > M。

如果存在X,A发送给X的短信数-A接收到X的短信数 > N。 L = 20 M = 50 N = 10

//m表示m_find下标 n表示边的数目

int flag=0;

int out_deg=0;//出度

int r_deg=0;//入度

int out_t=0;

int in_t=0;

int m_index=my[m_find[m]];/到映射

for(int i=1;i<=n;i++){

if(map_g[m_index][i]>0){

out_deg++;

out_t+=map_g[m_index][i];

}

if((map_g[m_index][i]-map_g[i][m_index])>10){

//最后一个条件

flag=1;

break;

}

}

for(int i=1;i<=n;i++){

if(map_g[i][m_index]){

r_deg++;

in_t+=map_g[i][m_index];

}

}

int l=(out_deg-r_deg);//没有给A发送的短信人数

//出度减去入度

int s=out_t-in_t;//短信数

if(l>20||s>50)

flag=1;

return flag;

}

int main(){

/*

华为机试垃圾短信识别

author :zhaoziyan

date : 20140401

思路用有向图,同时因为节点数字太大,建立映射,边的权重表示x—>y,x 发送给y的短信数量

有向图用矩阵来建立

*/

memset(map_g,0,sizeof(map_g));

//string 表示的是id号,int 表示的是在图的矩阵中的下标

//c语言没有map可以用结构体来实现,不过要处理元素的查找,以及去重等等。

map::iterator ptr;

int s_id,r_id;

int num=0;

char c;

scanf("%d",&m_find[num++]);

c=getchar();

while(c!='\n'){

scanf("%d",&m_find[num++]);

c=getchar();

}

int count=0;

int real_id,real_id2;

while(cin>>s_id>>r_id){

//test

//my[s_id]++;

//my[r_id]++;

if(my[s_id]==0) my[s_id]=++count;

//my[s_id]是否表示插入了

if(my[r_id]==0) my[r_id]=++count;

//==0表示这个元素不存在

real_id=my[s_id];

real_id2=my[r_id];

map_g[real_id][real_id2]++;//发送的短信数目加

}

int m_size=my.size();

for(int i=0;i

if(check(i,count))

cout<<1<<" ";

else

cout<<0<<" ";

}

return 0;

}

2016华为硬件机试题库

华为硬件机试题目(2016版本) 1.(判断题)DRAM上电时存储单元的内容是全0,而Flash上电时存储单元的内容是全1。(4分)? A.正确? B.错误 2.(判断题)眼图可以用来分析高速信号的码间干扰、抖动、噪声和衰减。(4分)? A.正确? B.错误 3.(判断题)以太网交换机将冲突域限制在每个端口,提高了网络性能。(4分)? A.正确? B.错误 4.(判断题)放大电路的输出信号产生非线性失真是由于电路中晶体管的非线性引起的。(4分)? A.正确? B.错误 5.(判断题)1的8位二进制补码是0000_0001,-1的8位二进制补码是 1111_1111。(4分)?

B.错误 6.(判断题)洗衣机,电冰箱等家用电器都使用三孔插座,是因为如果不接地,家用电器是不能工作的。(4分)? A.正确? B.错误 7.(判断题)十进制数据0x5a与0xa5的同或运算结果为:0x00。(4分)? A.正确? B.错误 8.(判断题)硅二极管的正向导通压降比锗二极管的大(4分)? A.正确? B.错误 9.(单选题)一空气平行板电容器,两级间距为d,充电后板间电压为u。然后将电源断开,在平板间平行插入一厚度为d/3的金属板。此时电容器原板间电压变为(4分)? A.U/3? B.2U/3? C.3U/4?

10.(单选题)8086CPU内部包括哪些单元(4分)? A.ALU,EU? B.ALU,BIU? C.EU,BIU? D.ALU,EU,BIU 11.(单选题)为了避免50Hz的电网电压干扰放大器,应该用那种滤波器:(4分)? A.带阻滤波器? B.带通滤波器? C.低通滤波器? D.高通滤波器 12.(单选题)关于SRAM和DRAM,下面说话正确的是:(4分)? A.SRAM需要定时刷新,否则数据会丢失? B.DRAM使用内部电容来保存信息? C.SRAM的集成度高于DRAM? D.只要不掉点,DRAM内的数据不会丢失 13.(单选题)在RS232串口中,采用哪一种校验方式:(4分)?

华为校园招聘上机题

目录 样题-初级题:从考试成绩中划出及格线 (2) 样题-中级题:亮着电灯的盏数 (2) 样题-高级题:地铁换乘 (3) 8.29去掉最大值、最小值之后剩下的个数 (3) 8.29从5个人中选取2个人作为礼仪 (4) 8.29验证括号是否匹配 (5) 8.31回文数 (5) 8.31将第一行中含有第二行中“23”的数输出并排序 (6) 8.31翻译电话号码 (6) 9.1.AM 将整数倒序输出,剔除重复数据 (7) 9.1.AM 大数相减 (8) 9.1.AM 判断if语句括号是否合法 (8) 9.1.PM (8) 9.1.PM (9) 9.1.PM (9)

样题-初级题:从考试成绩中划出及格线 10个学生考完期末考试评卷完成后,A老师需要划出及格线,要求如下: (1) 及格线是10的倍数; (2) 保证至少有60%的学生及格; (3) 如果所有的学生都高于60分,则及格线为60分 样题-中级题:亮着电灯的盏数 一条长廊里依次装有n(1 ≤ n ≤ 65535)盏电灯,从头到尾编号1、2、3、…n-1、n。每盏电灯由一个拉线开关控制。开始,电灯全部关着。 有n个学生从长廊穿过。第一个学生把号码凡是1的倍数的电灯的开关拉一下;接着第二个学生把号码凡是2的倍数的电灯的开关拉一下;接着第三个学生把号码凡是3的倍数的电灯的开关拉一下;如此继续下去,最后第n个学生把号码凡是n的倍数的电灯的开关拉一下。n个学生按此规定走完后,长廊里电灯有几盏亮着。 注:电灯数和学生数一致。 样题-高级题:地铁换乘 已知2条地铁线路,其中A为环线,B为东西向线路,线路都是双向的。经过的站点名分别如下,两条线交叉的换乘点用T1、T2表示。编写程序,任意输入两个站点名称,输出乘坐地铁最少需要经过的车站数量(含输入的起点和终点,换乘站点只计算一次)。 地铁线A(环线)经过车站:A1 A2 A3 A4 A5 A6 A7 A8 A9 T1 A10 A11 A12 A13 T2 A14 A15 A16 A17 A18 地铁线B(直线)经过车站:B1 B2 B3 B4 B5 T1 B6 B7 B8 B9 B10 T2 B11 B12 B13 B14 B15 8.29去掉最大值、最小值之后剩下的个数1、输入一串数,以','分隔,输出所有数中去掉最大值、最小值之后剩下的个数。 (其中最大值与最小值可能有多个) Smple input:3,3,5,3,6,9,7,9 Sample outPut: 3 8.29从5个人中选取2个人作为礼仪 2、要从5个人中选取2个人作为礼仪,其中每个人的身高范围为160-190,要

华为面试题

华为面试题 华为面试题1、static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别? 答案:全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。全局变量本身就是静态存储方式,静态全局变量当然也是静态存储方式。这两者在存储方式上并无不同。这两者的区别虽在于非静态全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。而静态全局变量则限制了其作用域,即只在定义该变量的源文件内有效,在同一源程序的其它源文件中不能使用它。由于静态全局变量的作用域局限于一个源文件内,只能为该源文件内的函数公用,因此可以避免在其它源文件中引起错误。从以上分析可以看出,把局部变量改变为静态变量后是改变了它的存储方式即改变了它的生存期。把全局变量改变为静态变量后是改变了它的作用域,限制了它的使用范围。 static函数与普通函数作用域不同。仅在本文件。只在当前源文件中使用的函数应该说明为内部函数(static),内部函数应该在当前源文件中说明和定义。对于可在当前源文件以外使用的函数,应该在一个头文件中说明,要使用这些函数的源文件要包含这个头文件 static 全局变量与普通的全局变量有什么区别:static全局变量只初使

化一次,防止在其他文件单元中被引用; static局部变量和普通局部变量有什么区别:static局部变量只被初始化一次,下一次依据上一次结果值; static函数与普通函数有什么区别:static 函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝 2、程序的局部变量存在于()中,全局变量存在于()中,动态申请数据存在于( )中。 答案:栈;静态区;堆 3、设有以下说明和定义: typedef union {long i; int k[5]; char c;} date; struct data { int cat; date cow; double dog;} too; date max; 则语句printf("%d",sizeof(too)+sizeof(max));的执行结果是:______ 答案:date是一个union, 变量公用空间. 里面最大的变量类型是int[5], 占用20个字节. 所以它的大小是20 data是一个struct, 每个变量分开占用空间. 依次为int4 + date20 + double8 = 32. 所以结果是 20 + 32 = 52. 当然...在某些16位编辑器下, int可能是2字节,那么结果是 int2 + date10 + double8 = 20 4、队列和栈有什么区别? 答案:队列先进先出,栈后进先出÷ 5、已知一个单向链表的头,请写出删除其某一个结点的算法,要求,先找到此结点,然后删除。答案:slnodetype *delete(slnodetype *head,int key){}中if(head->number==key) { head=pointer->next; free(pointer); break; } back = pointer; pointer=pointer->next; if(pointer->number==key)

华为校招·硬件技术工程师机考试题及答案

精品文档 1.(判断题)DRAM上电时存储单元的内容是全0,而Flash上电时存储单元的内容是全1。(4分) A.正确 B.错误 FLASH可保存 2.(判断题)眼图可以用来分析高速信号的码间干扰、抖动、噪声和衰减。(4分) A.正确 B.错误 3.(判断题)以太网交换机将冲突域限制在每个端口,提高了网络性能。(4分) A.正确 B.错误 4.(判断题)放大电路的输出信号产生非线性失真是由于电路中晶体管的非线性引起的。(4分) A.正确 B.错误 5.(判断题)1的8位二进制补码是0000_0001,-1的8位二进制补码是1111_1111。(4分) A.正确 B.错误 6.(判断题)洗衣机,电冰箱等家用电器都使用三孔插座,是因为如果不接地,家用电器是不能工作的。(4分) A.正确 B.错误 7.(判断题)十进制数据0x5a与0xa5的同或运算结果为:0x00。(4分) A.正确 B.错误 8.(判断题)硅二极管的正向导通压降比锗二极管的大(4分) A.正确 B.错误 9.(单选题)一空气平行板电容器,两级间距为d,充电后板间电压为u。然后将电源断开,在平板间平行插入一厚度为d/3的金属板。此时电容器原板间电压变为(4分) A.U/3 B.2U/3 C.3U/4 D.不变但电容的大小不是由 Q(带电量)或U(电压)决定的,即: C=εS/4πkd。其中,ε是一个常数, S为电容极板的正对面积, d为电容极板的距离, k则是静电力常量。而常见的平行板电容器 电容为C=εS/d.(ε为极板间介质的介电常数, S 为极板面积, d为极板间的距离。) 3电容器的电势能计算公式: E=CU^2/2=QU/2 10.(单选题)8086CPU内部包括哪些单元(4分) A.ALU,EU B.ALU,BIU C.EU,BIU D.ALU,EU,BIU 80x86从功能上分执行单元EU(Execution Unit),和总线接口单元BIU(Bus Interface Unit),执行单元由8个16位通用寄存器,1个16位标志寄存器,1个16位暂存寄存器,1个16位算术逻辑单元ALU及EU控制电路组成。 总线接口单元由4个16位段寄存器(CS,DS,SS,ES),1个16位的指令指针寄存器,1个与EU通信的内部暂存器,1个指令队列,1个计算20位物理地址的加法器∑及总线控制电路构成。 11.(单选题)为了避免50Hz的电网电压干扰放大器,应该用那种滤波器:(4分) A.带阻滤波器 B.带通滤波器 C.低通滤波器 D.高通滤波器 12.(单选题)关于SRAM和DRAM,下面说话正确的是:(4分) A.SRAM需要定时刷新,否则数据会丢失 B.DRAM使用内部电容来保存信息 C.SRAM的集成度高于DRAM D.只要不掉点,DRAM内的数据不会丢失 【解析】SRAM和DRAM都是随机存储器,机器掉电后,两者的信息都将丢失。它们的最大区别就是:DRAM是用电容有无电荷来表示信息0和1,为防止电容漏电而导致读取信息出错,需要周期性地给电容充电,即刷新;而SRAM是利用触发器的两个稳态来表示信息0和1,所以不需要刷新。另外,SRAM 的存取速度比DRAM更高,常用作高速缓冲存储器Cache。

华为上机题汇总111题

注:1.本文代码仅保证在visual studio 2005上运行通过! 2.高亮的题目为华为机试第三题左右难度。 3.本文的字符串基本运用C++里的string类,很少使用常规字符数组形式。 4.freopen()为输入重定向,方便测试,具体用法问度娘。 1.给定一个字符串,把字符串内的字母转换成该字母的下一个字母,a换成b,z换成a,Z换成A, 如aBf转换成bCg,字符串内的其他字符不改变,给定函数,编写函数 void Stringchang(const char*inpu,char*output) 其中input是输入字符串,output是输出字符串 #include #include #include using namespace std; void stringchang(const char*,char*); int main() { char input[100],output[100]; cin.getline(input,100); stringchang(input,output); cout<

华为面试题(附答案)Oracle

一、技术问题部分(数据库部分) 1、表空间的管理方式有哪几种? 数据字典管理方式 本地文件管理方式 2、谈谈你对索引的理解? 索引是若干数据行的关键字的列表,查询数据时,通过索引中的关键字可以快速定位到要访问的记录所在的数据块,从而大大减少读取数据块的I/O次数,因此可以显著提高性能。 3、说说索引的组成? 索引列、rowid 4、分区表用过么?谈谈分区表的应用? 分区表在对表的DML的并行处理上有极大得优势,而且可以一部分设为只读,用在销售记录,医院处方等地方!! 5、你对分区表的理解?怎样截断分区表一个分区的记录? 一个分区表有一个或多个分区,每个分区通过使用范围分区、散列分区、或组合分区分区的行 分区表中的每一个分区为一个段,可各自位于不同的表空间中 对于同时能够使用几个进程进行查询或操作的大型表分区非常有用 alter table table_name truncate partition partition_name; 6、物理文件有哪几种?控制文件包含了什么信息? 1)数据文件2)控制文件3)日志文件 包含维护和验证有选举权据库完整性的必要信息、例如,控制文件用于识别数据文件和重做日志文件,一个有选举权据库至少需要一个控制文件 7、表空间用完了如何增加? 三种种扩展方式: 1 增加数据文件alter tablespace name add datafile …路径? size 4M; 2 扩展数据文件大小alter database datafile …路径? resize 4M; 3 把数据文件设为自动增长 alter database datafile …路径? autoextend on next 1M maxsize 20M; 8、SGA包含几部分? Shared pool(共享池),DataBase Buffer Cache(数据缓冲区) Redo Log Buffer(重做日志缓冲区), Large Pool,大池,JAVA池。 9、DECODE函数的用法? DECODE的语法:DECODE(value,if1,then1,if2,then2,if3,then3,...,else),表示如果value等于if1时,DECODE函数的结果返回then1,...,如果不等于任何一个if值,则返回else。初看一下,DECODE 只能做等于测试,但刚才也看到了,我们通过一些函数或计算替代value,是可以使DECODE函数具备大于、小于或等于功能。还可以转化表结构! 10、DELETE和TRUNCATE的区别? 答:1、TRUNCATE在各种表上无论是大的还是小的都非常快。如果有

华为校园招聘电子科大上机题目

华为校园招聘电子科大上机题目 一.题目描述(60分):通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串过滤程序,若字符串中出现多个 相同的字符,将非首次出现的字符过滤掉。 比如字符串“abacacde”过滤结果为“abcde”。 要求实现函数:void stringFilter(const char *pInputStr, long lInputLen, char *pOutputStr); 【输入】 pInputStr:输入字符串 lInputLen:输入字符串长度 【输出】 pOutputStr:输出字符串,空间已经开辟好,与输入字符串 等长;【注意】 只需要完成该函数功能算法,中间不需要有任何IO的输入输 出示例输入:“deefd” 输出:“def” 输入:“afafafaf” 输出:“af” 输入:“pppppppp” 输出:“p” main函数已经 隐藏,这里保留给用户的测试入口,在这里测试你的实现函数, 可以调用printf打印输出当前你可以使用其他方法测试,只要 保证最终程序能正确执行即可,该函数实现可以任意修改,但是 不要改变函数原型。一定要保证编译运行不受影响。 二.题目描述(40分):通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出席 的重复字母进行压缩,并输出压缩后的字符串。

压缩规则: 1.仅压缩连续重复出现的字符。比如字符串“abcbc“由于无连续重复字符,压缩后的字符串还是“abcbc“。 2.压缩字段的格式为“字符重复的次数+字符“。例如:字符串“xxxyyyyyyz“压缩后就成为“3x6yz“。 要求实现函数: void stringZip(const char *pInputStr, long lInputLen, char *pOutputStr); 【输入】 pInputStr:输入字符串 lInputLen:输入字符串长度 【输出】 pOutputStr:输出字符串,空间已经开辟好,与输入字符串等长;【注意】 只需要完成该函数功能算法,中间不需要有任何IO的输入输出示例输入:“cccddecc” 输出:“3c2de2c” 输入:“adef” 输出:“adef” 输入:“pppppppp” 输出:“8p” 三.题目描述(50分):通过键盘输入100以内正整数的加.减运算式,请编写一个程序输出运算结果字符串。 输入字符串的格式为:“操作数1 运算符操作数2”,“操作数”与“运算符”之间以一个空格隔开。 补充说明: 1.操作数为正整数,不需要考虑计算结果溢出的情况。 2.若输入算式格式错误,输出结果为“0”。

华为机试题目参考1

华为南京地区校园招聘软件类上机考试说明同学您好! 欢迎您应聘华为公司。软件研发类岗位(软件研发、云计算、操作系统开发、数据库开发)需要提前进行上机考试。现将上机考试做如下说明。 一、题目类别 本次上机考试题目设置C/C++、Java两个类别,根据个人情况选作一个类别。 二、题目数量 每个考生有三道题,第一二道题必答,第三道题为附加题可以选作,附加题做出,成绩会计入总分。 三、考试时间安排 1、简历筛选后,从9月17日开始分批安排上机考试 2、每个考生上机考试时间为2小时 一、上机考试步骤 1、打开IE输入服务器的IP地址或者直接打开收藏夹中已经收藏好的地址; 2、输入姓名和手机号,选择考试语言,提交登录: 3、登录后会进入试题说明页面,考试阅读完试题要求后,在页面下方点击下载试题框架并解压到D盘。如果是C/C++则用VC打开工程进行编程,只在func.cpp文件中进行函数编写,函数名已经定义好;如果是Java则用Eclips打开Java工程进行编程,只在SWTest.java文件中进行函数编写,函数名已经定义好。注意,考生不要进行任何IO输入输出的处理(题目说明中已经有写了),否则会得0分。 4、编完代码并编译和调试通过后,点击试题页面下方的按钮,在弹出的窗口中,如果是C/C++则将test.exe和func.cpp拷贝到一个名为test的目录中然后打包该目录上传,如果是Java则将工程仍然打包为SWTest.rar一次性上传(这个过程非常重要,否则会因无法自动判卷而得0分)。上传之后页面会显示“提交成功”,然后关闭所有IE窗口并清空客户机中您所创建的所有内容后结束考试离开考场。 二、如何阅卷 1、考生提交试卷后,我们在服务器后台执行系统阅卷程序,进行自动判卷,不进行人工阅卷。 2、系统设置了多个测试用例,根据用例执行的情况判断考生所上机考试的分数。 三、样题 编写一个函数,统计出具有n个元素的一维数组中大于等于所有元素平均值的元素的个数并返回。 预祝您上机考试顺利! 华为南京校园招聘组 2011年9月 2012华为校园招聘机试(成都) 1.选秀节目打分,分为专家评委和大众评委,score[]数组里面存储每个评委打的分数, judge_type[]里存储与score[]数组对应的评委类别,judge_type[i] == 1,表示专家评委,judge_type[i] == 2,表示大众评委,n表示评委总数。打分规则如下:专家评委和大众评委的分数分别取一个平均分(平均分取整),然后,总分= 专家分*0.6 + 大众评委*0.4,总分取整。如果没有大众评委,则总分= 专家评委平均分,总分取整。函数最终返回选手得分。 函数接口:int cal_score(int score[],int judge_type[],int n) #include #include

华为2011面试问题汇总及答案

华为面试问题汇总及答案-2011华为面试题 Q1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图? Q2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用?TCP与UDP 呢? Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的? Q4:请问C++的类和C里面的struct有什么区别? Q5:请讲一讲析构函数和虚函数的用法和作用? Q6:全局变量和局部变量有什么区别?实怎么实现的?操作系统和编译器是怎么知道的? Q7:一些寄存器的题目,主要是寻址和内存管理等一些知识。 Q8:8086是多少尉的系统?在数据总线上是怎么实现的? 问题1:两笔记本电脑连起来后拼不通,你觉得可能有哪些问题? 问题2:我们在南京,和深圳的网络是通的,但和北京的网络不通,你以怎样的顺序检查问题? 问题3:解释什么叫“透明”?什么叫“网格”? 问题4:交换和路由的区别?VLAN的特点? 问题5:画一个积分电路和一个微分电路。 问题6:知道现在的路由器是第几代了吗? 第一题:可能的原因大体有以下几个:1、网线不通;2、某台笔记本上的tcp/ip协议安装的不完整;3、ip地址配置有问题(不在一个网段上);4、某台笔记本上有防火墙,把icmp 端口给屏蔽了(端口号:139)。这个题的我是从osi模型上入手,从物理层往上一层层排除。第二题:我设想的顺序是按照由近及远的顺序进行测试,如果是有vpn的话,只要确定两端和本地网络提供支持的公司之间的网络是连通的,其他的就交个那个公司来做了,如果是自己维护的基于ddn一类的点对点网络,那么找到路由表,从最近的路由器开始ping吧。 第三题:关于透明,我的理解就是一种开放的通信,意味着应用程序可以与网络上它所知道地址的其它任何应用程序连接并会话,而在这个网络上的所有中间设备不会干扰应用程序之间的信息交换。关于网格,就是把网络上所有的计算机进行整合使其成一台超级计算机,实现计算能力、存储容量、数据和信息资源等全方位的共享。 第四题:交换技术和路由技术的最大区别在于他们寻址的方式以及报文的转发方式上,交换技术是发生在2层也就是数据链路层上,是直接利用mac地址建立会话,路由技术发生在网络层,需要通过ip地址建立路由表,然后进行数据通信。在报文的转发方式上,交换技术是使用先收再转,路由技术是采用边收边转。 vlan的主要特点就是安全,信息只到达应该到达的地点。因此、防止了大部分基于网络监听的入侵手段。通过虚拟网设置的访问控制,使在虚拟网外的网络节点不能直接访问虚拟网内节点。 第五题:放弃(一样的放弃) 第六题:第6代,基于集群系统的路由器(我是这么答的) 依旧是师兄答案- -!基本一致! 1.请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图? OSI/ISO根据整个计算机网络功能将网络分为:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层七层。也称“七层模型”。 TCP/IP“五层模型”分为:物理层、网络接口层、网络层(IP层)、传输层(TCP/UDP层)、应用层。 2.请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用?TCP与UDP呢?

华为成都上机笔试题

2010年华为软件校园招聘编程测 类别:软件C语言 编程题(共2题,第一题40分,第二题60分,共100分。请上机编写程序,按题目要求提交文件。[详见考试说明] 本试题采用自动测试用例进行评分,测试用例不对考生公开,凡不满足提交要求导致不能运行或用例不通过,不予评分)。 1. 删除字符串中所有给定的子串(40分) 问题描述:在给定字符串中查找所有特定子串并删除,如果没有找到相应子串,则不作任何操作。 要求实现函数: int delete_sub_str(const char *str, const char *sub_str, char *result_str) 【输入】str:输入的被操作字符串 sub_str:需要查找并删除的特定子字符串 【输出】result_str:在str字符串中删除所有sub_str子字符串后的结果 【返回】删除的子字符串的个数 注: I、子串匹配只考虑最左匹配情况,即只需要从左到右进行字串匹配的情况。比如:在字符串"abababab"中,采用最左匹配子串"aba",可以匹配2个"aba"字串。如果 匹配出从左到右位置2开始的"aba",则不是最左匹配,且只能匹配出1个"aba"字串。II、输入字符串不会超过100 Bytes,请不用考虑超长字符串的情况。 示例

输入:str = "abcde123abcd123" sub_str = "123" 输出:result_str = "abcdeabcd" 返回:2 输入:str = "abcde123abcd123" sub_str = "1234" 输出:result_str = "abcde123abcd123" 返回:0 2. 高精度整数加法(60分) 问题描述: 在计算机中,由于处理器位宽限制,只能处理有限精度的十进制整数加减法,比如在32位宽处理器计算机中,参与运算的操作数和结果必须在-231~231-1之间。如果需要进行更大范围的十进制整数加法,需要使用特殊的方式实现,比如使用字符串保存操作数和结果,采取逐位运算的方式。如下: 9876543210 + 1234567890 = ? 让字符串num1="9876543210",字符串num2="1234567890",结果保存在字符串result = "11111111100"。 -9876543210 + (-1234567890) = ? 让字符串num1="-9876543210",字符串num2="-1234567890",结果保存在字符串result = "-11111111100"。 要求编程实现上述高精度的十进制加法。

华为面试题

华为面试题 Q1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图? Q2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用? TCP 与UDP呢? Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的? Q4:请问C++的类和C里面的struct有什么区别? Q5:请讲一讲析构函数和虚函数的用法和作用? Q6:全局变量和局部变量有什么区别?实怎么实现的?操作系统和编译器是怎么知道的? Q7:一些寄存器的题目,主要是寻址和内存管理等一些知识。 Q8:8086是多少尉的系统?在数据总线上是怎么实现的? 华为面试题2 面试题答案 1.请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图? OSI/ISO根据整个计算机网络功能将网络分为:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层七层。也称“七层模型”。TCP/IP“五层模型”分为:物理层、网络接口层、网络层(IP层)、传输层(TCP/UDP层)、应用层。 2.请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用?TCP与UDP呢? IP协议是网络层的协议,它实现了自动路由功能,也就是寻径的功能。TCP协议是传输层的协议,它向下屏蔽了IP协议不可靠传输的特性,向上提供一个可靠的点到点的传输;UDP也是传输层的协议,提供的是一种无连

接的服务,主要考虑到很多应用不需要可靠的连接,但需要快速的传输,如局域网中的计算机传输文件一般使用UDP协议。 3.请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的?交换机用在局域网中,交换机通过记录局域网内各节点机器的MAC地址就可以实现传递报文,无需看报文中的IP 地址。路由器识别不同网络的方法是通过识别不同网络的网络ID号(IP地址的高端部分)进行的`,所以为了保证路由成功,每个网络都必须有一个唯一的网络编号。路由器通过察看报文中IP地址来决定路径,向那个子网(下一跳)路由。也就是说交换机工作在数据链路层看MAC地址,路由器工作在网际层看IP地址。但是由于现在网络设备的发展,很多设备既有交换机的功能有由路由器的功能(交换式路由器)使得两者界限越来越模糊。 4.请问C++的类和C里面的struct 有什么区别? C++的class具有数据封装功能,其包含属性访问级别可以为private,public和protect,还具有实现类接口功能和辅助功能的操作函数,而struct属性访问权限只有public,没有数据封装功能,也就没有实现信息隐藏这一面向对象的思想的机制,struct本身不含有操作函数,只有数据。 5.请讲一讲析构函数和虚函数的用法和作用?析构函数是在类对象死亡时由系统自动调用,其作用是用来释放对象的指针数据成员所指的动态空间,如果在构造函数中,你申请了动态空间,那么为了避免引起程序错误,你必须在析构函数中释放这部分内存空间。如果基类的函数用virtual修饰,成为虚函数,则其派生类相应的重载函数仍能继承该虚函数的性质,虚函数进行动态联编,也即具有多态性,也就是派生类可以改变基类同名函数的行为,在面向对象世界中,多态是最强大的机制,虚函数就是这一机制的c++实现方式。 6.全局变量和局部变量有什么区别?实怎么实现的?操作系统和编译器是怎么知道的?全局变量是整个程序都可访问的变量,谁都可以访问,生存期在整个程序从运行到结束(在程序结束时所占内存释放);而局部变量存在于模块(子程序,函数)中,只有所在模块可以访问,其他模块不可直接访问,模块结束(函数调用完毕),局部变量消失,所占据的内存释放。操作系统和编译器,可能是通过内存分配的位置来知道的,全局变量分配在全局数据段并且在程序开始运行的时候被加载.局部变量则分配在堆栈里面。 7.8086是多少位的系统?在数据总线上是怎么实现的?答:8086的机器字长是16位,8086使用40个引脚的16个做地址/数据复用引腿来传输

华为机试试题汇总解析

1.第一题的题目大概是输入整型数组求数组的最小数和最大数之和,例如输入1,2,3,4则输出为5,当输入只有一个数的时候,则最小数和最大数都是该数,例如只输入1,则输出为2;另外数组的长度不超过50 #include main() { intnum[50]={0}; inti,n; printf("请输入整型数组的长度(1~50):"); scanf("%d",&n); printf("请输入整型数组的元素:"); for(i=0;inum[j]) min_num=num[j]; } intsum=min_num+max_num; printf("数组中最大与最小值之和:%d\n",sum); return0; } 2.求两个长长整型的数据的和并输出,例如输入1233333333333333。。。3111111111111111111111111.。。。,则输出。。。。

#include #include #include main() { char*num1,*num2; //两个长长整型数据 char*sum; // inttemp; int len_num1,len_num2; // 两个长长整型数据的长度 intlen_max,len_min; num1=(char*)malloc(sizeof(char)); num2=(char*)malloc(sizeof(char)); printf("输入两个长长整型数据:"); scanf("%s",num1); printf("输入两个长长整型数据:"); scanf("%s",num2); len_num1=strlen(num1); len_num2=strlen(num2); len_max=(len_num1>=len_num2)?len_num1:len_num2; len_min=(len_num1<=len_num2)?len_num1:len_num2; int len_max1=len_max; sum=(char*)malloc(sizeof(char)*len_max); memset(sum,0x00,len_max+1);//切忌初始化 for(;len_num1>0&&len_num2>0;len_num1--,len_num2--) { sum[len_max--]=((num1[len_num1-1]-'0')+(num2[len_num2-1]-'0')); } if(len_num1>0) { sum[len_max--]=num1[len_num1- 1 ]-'0'; len_num1--; } if(len_num2>0) {

华为视频会议试题库笔试

一、填空题 1.会议电视系统是集_视频 _通讯、_ 音频_通讯和_ 数据_通讯于一体的新一代交互式多 媒体通信系统,是基于通信网络上的一种增值业务。 2.视频会议协议体系包括 H.320 、 H.323 、 SIP 。 3.会议平台使用的双流协议为_ H.239 _。 4.720P视频格式的分辨率是_1280X720 _、1080P视频格式的分辨率是_ 1920X1080 。 5.华为会议电视终端9039S支持最大带宽 8M 和视频格式 1080P30 。 6.华为会议电视终端9039A具有 3 个高清输入端口。 7.华为会议电视终端9039S具有 3 个高清输出端口。 8.SMC2.0 由web服务端、后台服务、数据库三部分组成。 9.MCU是由 MC 和 MP 两个模块组成。 10.摄像机的3A技术是指自动曝光、自动白平衡、自动聚焦。 11.华为VP9660的主控板名称为 ECCB 。 12.华为高端一体化终端在召开720P50/60会议时的建议会议带宽为 4M 。 13.在H.323协议体系中, GK的基本功能包括地址解析、带宽管理、区域管理。 14.VP9660最多支持 168 路分辨率为1080P30的会场。 15.SMC2.0采用 B/S 架构。 16.MCU的 GE0 接口为默认业务网口。 17.视频会议系统通过 RTP 协议传输音视频码流。 18.终端“诊断”功能中的声音测试项可检测该终端音频输出是否正常。 19.CIF格式的图像分辨率为 352X288 。 20.H.264编解码协议中,I帧采用___帧内编码方式。 21.会议电视系统中声音的质量取决于采样率、量化位数和__编解码协议____。 22.音视频编码的三个基本过程有抽样、_量化_和编码。 23.VP8660 MCU设备的一块POEA扣板可以接入 4 路带宽为 2M 的4E1终端。 24.VP8660 MCU设备的一块POEB扣板可以接入 4 路带宽为 4M 的4E1终端。 25.VP8660 MCU设备的一块POEC扣板可以接入 4 路带宽为 6M 的4E1终端。 26.VP8660 MCU设备的一块POED扣板可以接入 4 路带宽为 8M 的4E1终端。 27.VP9660 MCU设备的一块Media单板支持 24 端口1080P30会场接入。 28.H.323体系中,会议电视终端向GK发起注册请求的RRQ消息承载于 UDP 层。

2014华为上机题

样题-初级题:从考试成绩中划出及格线 10个学生考完期末考试评卷完成后,A老师需要划出及格线,要求如下: (1) 及格线是10的倍数; (2) 保证至少有60%的学生及格; (3) 如果所有的学生都高于60分,则及格线为60分 样题-中级题:亮着电灯的盏数 一条长廊里依次装有n(1 ≤ n ≤ 65535)盏电灯,从头到尾编号1、2、3、…n-1、n。每盏电灯由一个拉线开关控制。开始,电灯全部关着。 有n个学生从长廊穿过。第一个学生把号码凡是1的倍数的电灯的开关拉一下;接着第二个学生把号码凡是2的倍数的电灯的开关拉一下;接着第三个学生把号码凡是3的倍数的电灯的开关拉一下;如此继续下去,最后第n个学生把号码凡是n的倍数的电灯的开关拉一下。n个学生按此规定走完后,长廊里电灯有几盏亮着。 注:电灯数和学生数一致。

样题-高级题:地铁换乘 已知2条地铁线路,其中A为环线,B为东西向线路,线路都是双向的。经过的站点名分别如下,两条线交叉的换乘点用T1、T2表示。编写程序,任意输入两个站点名称,输出乘坐地铁最少需要经过的车站数量(含输入的起点和终点,换乘站点只计算一次)。 地铁线A(环线)经过车站:A1 A2 A3 A4 A5 A6 A7 A8 A9 T1 A10 A11 A12 A13 T2 A14 A15 A16 A17 A18 地铁线B(直线)经过车站:B1 B2 B3 B4 B5 T1 B6 B7 B8 B9 B10 T2 B11 B12 B13 B14 B15 8.29去掉最大值、最小值之后剩下的个数1、输入一串数,以','分隔,输出所有数中去掉最大值、最小值之后剩下的个数。 (其中最大值与最小值可能有多个) Smple input:3,3,5,3,6,9,7,9 Sample outPut: 3

华为面试 笔试题目(附答案)

华为面试/笔试题目(附答案) 陈晓明2010-05-21 15:45:59 要查看更多华为笔经相关信息,请访问华为公司校园招聘club:深圳华为技术有限公司 (1)什么是预编译,何时需要预编译: 答案: 1、总是使用不经常改动的大型代码体。 2、程序由多个模块组成,所有模块都使用一组标准的包含文件和相同的编译选项。在这种情况下,可以将所有包含文件预编译为一个预编译头。 (2)char * const p char const * p const char *p 上述三个有什么区别? 答案: char * const p; //常量指针,p的值不可以修改 char const * p;//指向常量的指针,指向的常量值不可以 改 const char *p; //和char const *p (3) char str1[] = "abc"; char str2[] = "abc"; const char str3[] = "abc"; const char str4[] = "abc"; const char *str5 = "abc"; const char *str 6 = "abc"; char *str7 = "abc"; char *str8 = "abc"; cout (y)?(y):(x)) //结尾没有…;? (10)嵌入式系统中经常要用到无限循环,你怎么用c编写死循环。答案:while(1){}或者for(;;) (11)关键字static的作用是什么?答案:定义静态变量 (12)关键字const有什么含意?答案:表示常量不可以修改的变量。 (13)关键字volatile有什么含意?并举出三个不同的例子?答案:提示编译器对象的值可能在编译器未监测到的情况下改变。 (14)int (*s[10])(int) 表示的是什么啊?答案:int (*s[10])(int) 函数指针数组,每个指针指向一个int func(int param)的函数。 (15)有以下表达 式: int a=248; b=4;int const c=21;const int *d=&a; int *const e=

华为机试试题汇总

1 ?第一题的题目大概是输入整型数组求数组的最小数和最大数之和,例如输入1,2,3,4则输出为5,当输入只有一个数的时候,则最小数和最大数都是该数,例如只输入1,则输出为2;另外数组的长度不超过50 #i nclude mai n() { intn um[50]={0}; in ti, n; printf("请输入整型数组的长度(1~50):"); scan f("%d",&n); printf("请输入整型数组的元素:"); for(i=0;i nu m[j]) min_num=nu m[j]; } in tsum=min_nu m+max_ num; printf("数组中最大与最小值之和:%d\n",sum); return。; } 2. 求两个长长整型的数据的和并输出,例如输入123333333333333 3.OO

3111111111111111111111111。。O,则输出。OOO #i nclude #i ncludevstri ng.h> #i nclude mai n() { char* nu ml,* num2; //两个长长整型数据 char*sum; // in ttemp; int Ien_num1,len_num2; //两个长长整型数据的长度 in tle n_ max,le n_min; nu m1=(char*)malloc(sizeof(char)); nu m2=(char*)malloc(sizeof(char)); printf("输入两个长长整型数据:"); scan f("%s", nu m1); printf("输入两个长长整型数据:"); scan f("%s", nu m2); len_nu m仁strle n(nu m1); len_nu m2=strle n(nu m2); len_ max=(le n_nu m1>=le n_nu m2)?le n_nu m1:le n_nu m2; len_ mi n=(le n_nu m1<=le n_nu m2)?le n_nu m1:le n_nu m2; int len _max1=le n_max; sum=(char*)malloc(sizeof(char)*le n_max); memset(sum,OxOO,len_max+1);〃切忌初始化 for(;le n_nu m1> 0&&le n_nu m2>0;le n_nu m1--,le n_nu m2--) { sum[len_max--]=(( nu m1[len_num1-1]-'0')+( nu m2[len_num2-1]-'0')); } if(len_num1>0) { sum[le n_max--]=nu m1[le n_nu m1- 1 ]-'0'; len_nu m1--; } if(len_num2>0) {

相关文档