华为C++笔试题目.pdf
《华为C++笔试题目.pdf》由会员分享,可在线阅读,更多相关《华为C++笔试题目.pdf(82页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、华为l.static有什么用途?(请至少说明两种)1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。2)在模块内(但在函数体外),个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是个本地的全局变量。3)在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用2.引用与指针有什么区别?1)引用必须被初始化,指针不必。2)引用初始化以后不能被改变,指针可以改变所指的对象。3)不存在指向空值的引用,但是存在指向空值的指针。3.描述实时系统的基本特性在特定时间内完成特定的任务,实时性与可靠性。
2、4.全局变量和局部变量在内存中是否有区别?如果有,是什么区别?全局变量储存在静态数据库,局部变量在堆栈。5.什么是平衡二叉树?左右子树都是平衡二叉树且左右子树的深度差值的绝对值不大于lo6.堆栈溢出一般是由什么原因导致的?没有回收垃圾资源。7.什么函数不能声明为虚函数?constructor函数不能声明为虚函数。8.冒泡排序算法的时间复杂度是什么?时间复杂度是0(M2)。9.写出floatx与“零值”比较的if语句。if(x0.000001&x-0.000001)lO.Internet采用哪种网络协议?该协议的主要层次结构?Tcp/ip协议主要层次结构为:应用层/传输层/网络层/数据链路层/物
3、理层。11.Internet物理地址和IP地址转换采用什么协议?ARP(Address Resolution Protocol)(地址解析 1 翁 青 羲)12.IP地址的编码分为哪俩部分?IP地址由两部分组成,网络号和主机号。不过是要和“子网掩码”按位与上之后才能区分哪些是网络位哪些是主机位。13.用户输入M,N值,从 1至 N 开始顺序循环数数,每数到M 输出该数值,直至全部输出。写出C 程序。循环链表,用取余操作做14.不能做switch。的参数类型是:switch的参数不能为实型。上海华为的一道关于指针方面的编程题int A nSize,其中隐藏着若干0,其余非0 整数,写一个函数in
4、t Func(int*A,int nSize),使 A 把。移至后面,非 0 整数移至数组前面并保持有序,返回值为原数据中第一个元素为0 的下标。(尽可能不使用辅助空间且考虑效率及异常问题,注释规范且给出设计思路)华为笔试题含答案 软件工程题写一个程序,要求功能:求出用1,2,5 这三个数不同个数组合的和为1 0 0 的组合个数。如:1 0 0 个 1 是一个组合,5 个 1 加 1 9 个 5 是一个组合。请 用 C+语言写。答案:最容易想到的算法是:设 x 是 1 的个数,y 是 2 的个数,z 是 5 的个数,num ber是组合数注意到0v=xv=100,0=y=50 0=z=2 0,
5、所以可以编程为:number=0;for(x=0;x=100;x+)for(y=0;y=50;y+)for(z=0;z=20;z+)if(x+2*y+5*z)=100)number+;cout number endl;上面这个程序一共要循环1 00*50*2 0 次,效率实在是太低了事实上,这个题目是一道明显的数学问题,而不是单纯的编程问题。我的解法如卜.:因为 x+2y+5z=1 00所以 x+2y=10 0-5 z,且 zv=20 x=100 y=50所以(x+2y)v=1 0 0,且(x+5z)是偶数对 z 作循环,求 x 的可能值如下:z=0,x=1 00,98,96,.0z=1,x=
6、95,93,.,1z=2,x=90,88,.,0z=3,x=85,8 3,,1z=4,x=80,78,.,0z=1 9,x=5,3,1z=20,x=0因此,组合总数为1 00以内的偶数+95以内的奇数+90以内的偶数+5以内的奇数+1 ,即为:(51+48)+(46+43)+(41+38)+(36+33)+(31+28)+(26+23)+(21+18)+(16+13)+(11 +8)+(6+3)+1某个偶数m以内的偶数个数(包括0)可以表示为m/2+1=(m+2)/2某个奇数m以内的奇数个数也可以表示为(m+2)/2所以,求总的组合次数可以编程为:number=0;for(int m=0;m=
7、100;m+=5)(number+=(m+2)/2;)cout number next=NULL;p=h;for(i=0;i next=s;printf(MPlease input the information of the student:name sex no age nH);scanf(H%s%c%d%dn,s-name,&s-sex,&s-no,&s-age);s-next=NULL;p=s;)printf(Create successful!*);return(h);)void deletelist(struct stu*s,int a)struct stu*p;while(s a
8、ge!=a)(p=s;s=s-next;)if(s=NULL)printf(The record is not exist.*);else(p-next=s-next;printf(HDelete successful!,1);)void display(struct stu*s)s=s-next;while(s!=NULL)(printf(*%s%c%d%dnH,s-name,s-sex,s-no,s-age);s=s-next;)int main()(struct stu*s;int n,age;printf(nPlease input the length of seqlist:nu);
9、scanf(”cT,&n);s=creatlist(n);display(s);printf(Please input the age:n);scanf(d”,&age);deletelist(s,age);display(s);return 0;)2、实现一个函数,把一个字符串中的字符从小写转为大写。#include stdio.h*#include conio.hvoid uppers(char*s,char*us)(for(;*s!=0;s+,us+)(if(*s=a&*s=z)*us=*s-32;else*us=*s;)*us=0;)int main()(char*s,*us;char
10、 ss20;printf(HPlease input a strin g:“);scanf(%sH,ss);s=ss;uppers(s,us);printf(MThe result is:n%snn,us);getch();)随机输入一个数,判断它是不是对称数(回文数)(如3,121,1 2321,4 5 2 5 4)。不能用字符串库函数1.函数名称:Symmetry功能:判断一个数时候为回文数(121,35653)输入:长整型的数输出:若为回文数返回值为1 esle 0*/unsigned char Symmetry(long n)(long i,temp;i=n;temp=0;while不
11、用出现长度问题,将数按高低位掉换(temp=temp*10+i%1 0;i/=10;)return(temp=n);)方法一功能:判断字符串是否为回文数字实现:先将字符串转换为正整数,再将正整数逆序组合为新的正整数,两数相同则为回文数字输入:char*s:待判断的字符串输出:无返回:0:正确;1:待判断的字符串为空;2:待判断的字符串不为数字;3:字符串不为回文数字;4:待判断的字符串溢出.-.-*/unsigned lsSymmetry(char*s)(char*p=s;long nNumber=0;long n=0;long nTemp=0;/*判断输入是否为空*/if(*s=0)retu
12、rn 1;/*将字符串转换为正整数*/while(*p!=VWOV)(/*判断字符是否为数字*/if(*p9)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(nNum
13、ber!=nTemp)return 3;return 0;)方法二功能:判断字符串是否为回文数字实现:先得到字符串的长度,再依次比较字符串的对应位字符是否相同输入:char*s:待判断的字符串输出:无返回:0:正确;1:待判断的字符串为空;2:待判断的字符串不为数字;3:字符串不为回文数字-.-.-.-.-*/unsigned lsSymmetry_2(char*s)(char*p=s;int nLen=0;int i=0;/*判断输入是否为空*/if(*s=0)return 1;/*得到字符串长度*/while(*p!=0)(/*判断字符是否为数字*/if(*p,9,)return 2;nL
14、en+;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;)求2 2000的 所 有 素 数.有 足 够 的 内 存,要 求 尽 量 快答案:int findvalue2000=2;static int find=1;bool adjust(int value)(assert(value=2);if(value=2)ret
15、urn true;for(int i=O;iipconfig/all 其中 physical address 就是 mac 地址。5、以下属于数据链路层功能的是()A、定义数据传输速率B、定义物理地址C、描述网络拓扑结构D、流控制数据链路层的主要功能有:1.数据链路的建立和拆除在两个或多个网络实体间建立一条逻辑通道,发方发出建立和拆除链路的请求指示,收方收到后给出应答信号。2.帧传输和帧同步帧是具有一定长度和格式的信息块,是数据链路层的传输单位,由一些字段和标志组成,.不同网络其帧格式或长度可不同,但将位流组成帧的方法基本相同,常用的有:带填充字符的首尾定界法,带填充位的首尾标志法等。其目的是
16、使接收方能够准确的从收到的比特流中识别出帧的边界,达到帧同步。3.差错与流量控制常用的差错控制方法有自动重发请求(ARQ)技术和前向纠错技术(FEC);常用的流量控制方法有停止等待协议和滑动窗口协议。4.数据链路管理提供各种服务质量参数,包括检测到不可纠正错误的平均时间、漏检差错率、传输延迟和吞吐量等,以及对异常情况的处理数据链路层通过物理网络链路提供可靠的数据传输。不同的数据链路层定义了不同的网络和协议特征,其中包括物理编址、网络拓扑结构、错误校验、帧序列以及流控。物理编址(相对应的是网络编址)定义了设备在数据链路层的编址方式;网络拓扑结构定义了设备的物理连接方式,如总线拓扑结构和环拓扑结构
17、;错误校验向发生传输错误的上一层协议告警;数据帧序列重新整理并传输除序列以外的帧;流控可能延缓数据的传输,以使接收设备力的信息流而崩溃。数据链路层实际上由两个独立的部分组成,介 质 存 取 控 制(Media AccessControl,MAC)和逻辑链路控制层(Logical Link Control,LLC)。MAC描述在共享介质环境中如何进行站的调度、发生和接收数据。MAC确保信息跨链路的可靠传输,对数据传输进行同步,识别错误和控制数据的流向。一般地讲,MAC只在共享介质环境中才是重要的,只有在共享介质环境中多个节点才能连接到同一传输介质上。IEEE MAC规则定义了地址,以标识数据链路
18、层中的多个设备。逻辑链路控制子层管理单一网络链路上的设备间的通信,IEEE 802.2标准定义了 LLC。LLC支持无连接服务和面向连接的服务。在数据链路层的信息帧中定义了许多域。这些域使得多种高层协议可以共享一个物理数据链路。6、IEEE802.3U 标准是指()A、以太网B、快速以太网C、令牌环网D、FDDI 网IEEE802.3IEEE802.3u 100BASET 快速以太网标准IEEE802.3Z基于光纤和短距离铜缆的1000Base-XIEEE802.3ab 基于 5 类 UTP 的 1000Base-T 标准7、如果要将两计算机通过双绞线直接连接,正确的线序是()A、1-K 2-
19、2 3-3、4-4 5-5 6 6、7-7 8-8B、1-2,2-1,3-6,B 4 5-5,6-3 7-7 8-8C、1-3,2-6 3-1,4-4、5-5,6-2.7-7.8-8D、两计算机不能通过双绞线直接连接将两计算机通过双绞线直接连接就是 端 是 A 线序,一端是B 线序。A 和 B 的不同就是把1和 3 互换,把 2 和 6 互换顺序,其它不变。8、在 V.35和 V.24规程中,控制信号RTS表 示()A、数据终端准备好;B、数据准备好;C、数据载体检测;D、请求发送;E、清除发送。d9、路由器作为网络互连设备,必须具备以下哪些特点。()A、至少支持两个网络接口B、协议至少要实现
20、到网络层C、至少支持两种以上的子网协议D、至少具备一个备份口E、具有存储、转发和寻径功能F、一组路由协议G、必须有较高的协议处理能力abe10、路由器的作用有()A、异种网络互连B、子网间的速率适配C、连接局域网内两台以上的计算机D、隔离网络,防止网络风暴,指定访问规则(防火墙)E、子网协议转换F、加快网络报文的传递速度G、路 由(寻径):路由表建立、刷新、查找H、报文的分片与重组abdg11、调用上一条历史命令的快捷键是()A、CTRL-PB、CTRL-0C、ALT-PD、ALT-0a12、交换机工作在OSI七层的明,一层?()A、一层B、二层C、三层D、三层以上b13、以下对CSMA/CD
21、描述正确的是()A、在数据发送前对网络是否空闲进行检测B、在数据发送时对网络是否空闲进行检测C、在数据发送时对发送数据进行冲突检测D、发生碰撞后MAC地址小的主机拥有发送优先权14、以下对,STORE AND FORWARD描述正确的是()A、收到数据后不进行任何处理,立即发送B、收到数据帧头后检测到目标MAC地址,立即发送C、收到整个数据后进行CRC校验,确认数据正确性后再发送D、发送延时较小E、发送延时较大ce15、以下对交换机工作方式描述正确的是()A、可以使用半双工方式工作B、可以使用全双工方式工作C、使用全双工方式工作时要进行回路和冲突检测D、使用半双工方式工作时要进行回路和冲突检测
22、abd以太网卡可以工作在两种模式下:半双工和全双工。半双工:半双工传输模式实现以太网载波监听多路访问冲突检测。传统的共享LAN是在半双工下工作的,在同时间只能传输单一方向的数据。当两个方向的数据同时传输时,就会产生冲突,这会降低以太网的效率。全双工:全双工传输是采用点对点连接,这种安排没有冲突,因为它们使用双绞线中两个独立的线路,这等于没有安装新的介质就提高了带宽。16、VLAN的主要作用有()A、保证网络安全B、抑制广播风暴C、简化网络管理D、提高网络设计灵活性acd17、在交换机中用户权限分为几个级别()A、1B、2C、3D、4d21、某公司申请到个C 类 IP地址,但要连接6 个的子公司
23、,最大的一个子公司有26台计算机,每个子公司在一个网段中,则子网掩码应设为()。A、255.255.255.0B、255.255.255.128C、255.255.255.192D、255.255.255.22422、与 10.110.12.29 mask 255.255.255.224 属于同一网段的主机 IP 地 址 是()。A、10.110.12.0B、10.110.12.30C、10.110.12.31D、10.110.12.32be23、ARP协议的作用是()A、将端口号映射到IP地址B、连接IP层和TCP层C、广播IP地址D、将IP地址映射到第二层地址d24、当路由器接收的IP报文
24、的T T L值等于1时,采取的策略是()A、丢掉该分组B、将该分组分片C、转发该分组D、以上答案均不对25、在NetW are网络中,客户需要访问某个类型的服务器时,首先要发送一个()广播报文来寻找服务器A、RipB、S叩C、GnsD、Arpb26、IP X地址网络地址有()个字节A、10B、8C、4D、6a27、对于帧中继描述正确的是()A、使用具有本地意义的D LC I描述PVCB、使用具有全局意义的D LC I描述PVCC、使用具有本地意义的D LC I描述SVCD、使用具有全局意义的D LC I描述SVCa28、对于INVERSE ARP的描述正确的是()A、通过广播方式解析对端网络地
25、址B、通过多播方式解析对端网络地址C、通过LMI信令解析对端网络地址D、通过广播方式解析对端DLCI30、X.25与帧中继对比描述正确的是()A、X.25是面向连接的协议,传输正确性、稳定性高于帧中继B、X.25具有两层结构,较帧中继简单C、X.25对于IP 而言传输效率低于帧中继D、X.25可以提供比帧中继更多的服务ac31、X.25使用映射的作用是()A、映射本地IP 到对端端口值,以便路由器发送数据时确认发送端口B、映射本地IP 到本地端口值,以便路由器发送数据时确认发送端口C、映射对端IP 到本地端口值,以便X.25交换网络查找数据发送路径D、映射对端IP到对端端口值,以便X.25交换
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 华为 C+ 笔试 题目
限制150内